Board index » cppbuilder » background building

background building


2005-03-18 10:17:26 PM
cppbuilder81
My compile time for my project has reached about 8 minutes. I could possibly
rearichitect our software so that it used DLLs but I want to investigate the
possiblity of increasing our build times. One idea is background
compilation.
I assume that the BCB IDE will command line out to the C compiler. What
prevents me from doing this on multiple machines and then performing a link
on my development machine? Could I have a simple program that copies my CPP
file to a differenent PC and command line compile it and then copy the
updated object file back to my PC.
My question is will this work and will the IDE be smart enough not to force
a recompile of the whole project if all the object files were already
compiled somewhere else?
Dave
 
 

Re:background building

Drobins wrote:
Quote
My compile time for my project has reached about 8 minutes. I could possibly
rearichitect our software so that it used DLLs but I want to investigate the
possiblity of increasing our build times.
You get paid by the hour?
Quote
I assume that the BCB IDE will command line out to the C compiler.
No, it doesn't. The IDE supports background compilation built in, but it
does not use the command line. Also, the background compiler runs in a
thread with too low of priority, and actually takes a bit longer to build.
Quote
What
prevents me from doing this on multiple machines and then performing a link
on my development machine? Could I have a simple program that copies my CPP
file to a differenent PC and command line compile it and then copy the
updated object file back to my PC.
You would have to do this outside the IDE, I would think.
Quote
My question is will this work and will the IDE be smart enough not to force
a recompile of the whole project if all the object files were already
compiled somewhere else?
If the times on all the machines are in sync, and you copy OBJs back to
your machine, the IDE should think that everything is up to date.
H^2
 

Re:background building

Ok, this is what I tried.
I wrote a batch file to command line compile a particular source file hoping
that the obj could be copied to my orginal directory and would make bcb
recompile. This didn't work. This is what I did.
bcc32 -c C:\myfile.cpp
1) I change the file in the BCB editor and saved it and closed it.
2) I ran my batch file and generated the object file. I then copied it over
the old obj file (this means the date of the obj is newer than the source
file)
3) I then ran my project. The BCB IDE then ignored my new obj and recompiled
my source file.
My thought was the when BCB goes to recompile it compares the dates on the
objs and the sources and if the date on the obj was newer than the source it
would recompile. I guess it isn't that simple.
Any more thoughts?
Dave
--
"Drobins" < XXXX@XXXXX.COM >wrote in message
Quote

My compile time for my project has reached about 8 minutes. I could
possibly
rearichitect our software so that it used DLLs but I want to investigate
the
possiblity of increasing our build times. One idea is background
compilation.

I assume that the BCB IDE will command line out to the C compiler. What
prevents me from doing this on multiple machines and then performing a
link
on my development machine? Could I have a simple program that copies my
CPP
file to a differenent PC and command line compile it and then copy the
updated object file back to my PC.

My question is will this work and will the IDE be smart enough not to
force
a recompile of the whole project if all the object files were already
compiled somewhere else?

Dave






 

{smallsort}

Re:background building

Drobins wrote:
Quote
Ok, this is what I tried.

I wrote a batch file to command line compile a particular source file hoping
that the obj could be copied to my orginal directory and would make bcb
recompile. This didn't work. This is what I did.

bcc32 -c C:\myfile.cpp

1) I change the file in the BCB editor and saved it and closed it.
2) I ran my batch file and generated the object file. I then copied it over
the old obj file (this means the date of the obj is newer than the source
file)
3) I then ran my project. The BCB IDE then ignored my new obj and recompiled
my source file.

My thought was the when BCB goes to recompile it compares the dates on the
objs and the sources and if the date on the obj was newer than the source it
would recompile. I guess it isn't that simple.

Any more thoughts?

Dave

Drobins
If you can change your hardware with the fast one it may help to solve
your problem. ATA serial disks are magnificent.
I recomend to use preecompiled headers in your compilations. Just Look
Harold Howe's FAQ on this subject. I cant remmember the URL.
Sabetay
 

Re:background building

Drobins wrote:
Quote
bcc32 -c C:\myfile.cpp
Shouldn't there be more parameters than that?
Quote
3) I then ran my project. The BCB IDE then ignored my new obj and recompiled
my source file.
Do you have the "make" set to always perform a "build all" ?