public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Speeding up compiling and linking
@ 2005-03-24 10:21 Vishnu Mahadevan Menon
  2005-03-24 12:34 ` Stuart Brooks
  2005-03-24 17:19 ` Eljay Love-Jensen
  0 siblings, 2 replies; 3+ messages in thread
From: Vishnu Mahadevan Menon @ 2005-03-24 10:21 UTC (permalink / raw)
  To: gcc-help

Hello all.

The application I'm working on is of a decent size -
nearly 0.5 million lines of C++ code - and compiling
and linking is simply a *pain*. We build for both
Windows and Linux. On Windows we use Incredibuild
(from Xoreax)/VC++, and on Linux, Teambuilder/gcc.

What are some of the techniques you use to speed up
linking and compilation times? I seem to run into
tricks like using shared libraries, forward
declarations etc., but it'd be great to have a clear
view of the major options available before embarking
on a major code rearranging exercise.

Thanks in advance to those who'll respond!

Best regards,
Vishnu.


		
__________________________________ 
Do you Yahoo!? 
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/ 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Speeding up compiling and linking
  2005-03-24 10:21 Speeding up compiling and linking Vishnu Mahadevan Menon
@ 2005-03-24 12:34 ` Stuart Brooks
  2005-03-24 17:19 ` Eljay Love-Jensen
  1 sibling, 0 replies; 3+ messages in thread
From: Stuart Brooks @ 2005-03-24 12:34 UTC (permalink / raw)
  To: Vishnu Mahadevan Menon, gcc-help

We've used tools like ccache and distcc to good effect on NetBSD, probably
halving our average compile times on a code base of a million lines or so.
I'm not sure if you can use those under Windows or not, but Linux should
support them.

NB. distcc allows distributed compilation if you have a few free machines
lying around, and ccache caches object files based on a hash of the
preprocessed source to reduce unnecesasry recompilation (useful if you do a
lot of make cleans). They both improve compilation speed but not linking.

----- Original Message -----
From: "Vishnu Mahadevan Menon" <vishnu_m_menon@yahoo.com>
To: <gcc-help@gcc.gnu.org>
Sent: Thursday, March 24, 2005 12:10 PM
Subject: Speeding up compiling and linking


> Hello all.
>
> The application I'm working on is of a decent size -
> nearly 0.5 million lines of C++ code - and compiling
> and linking is simply a *pain*. We build for both
> Windows and Linux. On Windows we use Incredibuild
> (from Xoreax)/VC++, and on Linux, Teambuilder/gcc.
>
> What are some of the techniques you use to speed up
> linking and compilation times? I seem to run into
> tricks like using shared libraries, forward
> declarations etc., but it'd be great to have a clear
> view of the major options available before embarking
> on a major code rearranging exercise.
>
> Thanks in advance to those who'll respond!
>
> Best regards,
> Vishnu.
>
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Small Business - Try our new resources site!
> http://smallbusiness.yahoo.com/resources/
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Speeding up compiling and linking
  2005-03-24 10:21 Speeding up compiling and linking Vishnu Mahadevan Menon
  2005-03-24 12:34 ` Stuart Brooks
@ 2005-03-24 17:19 ` Eljay Love-Jensen
  1 sibling, 0 replies; 3+ messages in thread
From: Eljay Love-Jensen @ 2005-03-24 17:19 UTC (permalink / raw)
  To: Vishnu Mahadevan Menon, gcc-help

Hi Vishnu,

>What are some of the techniques you use to speed up linking and compilation times?

Large-Scale C++ Software Design
by John Lakos
http://www.amazon.com/exec/obidos/tg/detail/-/0201633620

HTH,
--Eljay

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-03-24 12:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-24 10:21 Speeding up compiling and linking Vishnu Mahadevan Menon
2005-03-24 12:34 ` Stuart Brooks
2005-03-24 17:19 ` Eljay Love-Jensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).