Board index » cppbuilder » Un-necessary compiling of files built by different machine.

Un-necessary compiling of files built by different machine.

I am having a wierd problem involving Builder Pro v4.
I work on several different computers my main desktop is a PIII
930 MHz. Because this is the most powerful computer I have access
to I do my builds on this machine. There is a pentium 300 in the lab
where I test my code (functional test software) . Sometimes I need
to debug in the IDE on the slower machine. The slow machine is running
WinNT WS sp5. The fast machine is running Win2k. They are networked
together. The fast machines C:\ drive is mounted/mapped as drive E:\ on
the
slow machine.

For some reason when I open up the project from the remote share,
on the slow machine the IDE wants to recompile all the files across the
network.
Touching the obj files from the slow machine does prevent the
unnecessary building.
At first I suspected a time discreptancy between the 2 machines. But the
2 machines
appear to be working off the same time.

Anyone have any ideas what could be going one here? Does the IDE make
logic care
about anything other than file write access time?

 

Re:Un-necessary compiling of files built by different machine.


Hi Frank,

Quote
> Does the IDE make
> logic care
> about anything other than file write access time?

Yes, it might be due to auto-dependecy information (path
to headers including drive letter might be in the OBJs).
You can try turning it OFF at Project | Options |
Advanced Compiler | Output |  Autodependency information

--Craig

Re:Un-necessary compiling of files built by different machine.


Thanks Craig,
I am at home now (thank God) but I will try your suggestion on Monday.
I have a local copy of the project here and auto dependency was checked
on. I never knew what that was for.
Quote
Craig Farrell wrote:
> Hi Frank,

> > Does the IDE make
> > logic care
> > about anything other than file write access time?

> Yes, it might be due to auto-dependecy information (path
> to headers including drive letter might be in the OBJs).
> You can try turning it OFF at Project | Options |
> Advanced Compiler | Output |  Autodependency information

> --Craig

Re:Un-necessary compiling of files built by different machine.


Auto dependency seemed to have no effect on my problem.
I did notice (using tdump) that all of the objects have absolute DOS
pathnames
which would only be valid on one the development machine. I did a full
rebuild
after clearing the auto depency checkbox. The absolute pathes were still
there.
Is there anyway to force the compiler to output relative path
information?

000000 THEADR  C:\Projects\CppBuilder\FileCompare\FileView.cpp
000034 COMENT  Purge: Yes, List: Yes, Class: 0   (000h)
    Translator: Borland C++ 5.5
00004A COMENT  Purge: Yes, List: Yes, Class: 232 (0E8h)
    Source File 1: C:\Projects\CppBuilder\FileCompare\FileView.cpp
02/14/2001  10:06:12 pm

Quote
Craig Farrell wrote:
> Hi Frank,

> > Does the IDE make
> > logic care
> > about anything other than file write access time?

> Yes, it might be due to auto-dependecy information (path
> to headers including drive letter might be in the OBJs).
> You can try turning it OFF at Project | Options |
> Advanced Compiler | Output |  Autodependency information

> --Craig

Re:Un-necessary compiling of files built by different machine.


Yes, there is.  Make yourself a standard drive letter which is the root of
all your source code [I typically use W:\].  Then you can map to your fast
machine in the lab's source as W:.  You can use SUBST on your fast machine
to accomplish the same [i.e. SUBST W: C:\SOURCE].

You may also find this approach handy when dealing with multiple versions of
code.

HIH,
JR

Quote
"Frank Gleeson" <fglee...@netzero.net> wrote in message

news:3A91F8B8.DFF6B63C@netzero.net...
Quote
> Auto dependency seemed to have no effect on my problem.
> I did notice (using tdump) that all of the objects have absolute DOS
> pathnames
> which would only be valid on one the development machine. I did a full
> rebuild
> after clearing the auto depency checkbox. The absolute pathes were still
> there.
> Is there anyway to force the compiler to output relative path
> information?

> 000000 THEADR  C:\Projects\CppBuilder\FileCompare\FileView.cpp
> 000034 COMENT  Purge: Yes, List: Yes, Class: 0   (000h)
>     Translator: Borland C++ 5.5
> 00004A COMENT  Purge: Yes, List: Yes, Class: 232 (0E8h)
>     Source File 1: C:\Projects\CppBuilder\FileCompare\FileView.cpp
> 02/14/2001  10:06:12 pm
> Craig Farrell wrote:

> > Hi Frank,

> > > Does the IDE make
> > > logic care
> > > about anything other than file write access time?

> > Yes, it might be due to auto-dependecy information (path
> > to headers including drive letter might be in the OBJs).
> > You can try turning it OFF at Project | Options |
> > Advanced Compiler | Output |  Autodependency information

> > --Craig

Re:Un-necessary compiling of files built by different machine.


Quote
> Auto dependency seemed to have no effect on my problem.
> I did notice (using tdump) that all of the objects have absolute DOS
> pathnames

> 000000 THEADR  C:\Projects\CppBuilder\FileCompare\FileView.cpp

I don't know why that path is there but maybe it relates
to debug info? I can see auto-dependency info being a
factor because it directly affects the make logic. I
wonder if the project settings for things like the path
to headers and CSM come into play? e.g. the setting
might be $(BCB)\Lib\VCL50.CSM. Maybe experiment with
a PCH in the same dir as the project?

--Craig

Other Threads