Discussion:
[distcc] minimal gcc configuration for distccd
Steven Honeyman
2014-08-08 13:11:46 UTC
Permalink
Hi All,

I've been setting up a build script for a tiny(for modern day
standards!) initramfs environment so that I can "repurpose" computers
to use as distccd servers without touching the OS on the hard disk.

This is basically just a trimmed linux kernel, busybox, glibc, gcc,
and of course distccd (+avahi +dbus, grrr!)

It's working perfectly right now, the size is around 51MB total (using
latest linux 3.16+gcc4.9.1), but I still want to trim it down further!
Could someone give me a list of the actual requirements of gcc, for
distccd to work successfully? I tried randomly plucking files from it
- not a good idea it seems!
As I understand it, distccd only should need to be able to compile
preprocessed files, so should it still work after I remove the linker,
headers(from libexec), lto-wrapper, etc?

Here's my gcc configure for the current working setup in case there is
something else I can exclude but haven't found yet:

../gcc-4.9.1/configure --prefix=/usr --libdir=/usr/lib
--libexecdir=/usr/lib --mandir=/usr/share/man --enable-languages=c,c++
--disable-nls --disable-multilib --disable-werror --with-system-zlib
--enable-clocale=gnu --enable-checking=release --enable-threads=posix
--without-headers --disable-libatomic --disable-libgomp
--disable-libitm --disable-libquadmath --disable-libsanitizer
--disable-libssp --disable-libvtv --disable-libcilkrts
--disable-libstdcxx --disable-libstdcxx-pch --disable-libstdc++-v3
--disable-libada --disable-libunwind-exceptions --disable-debug
--disable-bootstrap --disable-plugin --disable-lto --disable-shared
--enable-static

I expect gmail will make a mess of that - in my script it is nicely
broken into smaller lines, I promise!
Also, one final question I'm almost ashamed I need to ask - will
leaving cloog and isl out of the build have any effect on the code it
outputs from preprocessed source... or are they just to optimize the
compiler itself?


Any help or feedback would be appreciated,

Steven.
Martin Pool
2014-08-08 14:17:36 UTC
Permalink
I don't have any details on what gcc does or doesn't need, but it's a nice
project.
Post by Steven Honeyman
Hi All,
I've been setting up a build script for a tiny(for modern day
standards!) initramfs environment so that I can "repurpose" computers
to use as distccd servers without touching the OS on the hard disk.
This is basically just a trimmed linux kernel, busybox, glibc, gcc,
and of course distccd (+avahi +dbus, grrr!)
It's working perfectly right now, the size is around 51MB total (using
latest linux 3.16+gcc4.9.1), but I still want to trim it down further!
Could someone give me a list of the actual requirements of gcc, for
distccd to work successfully? I tried randomly plucking files from it
- not a good idea it seems!
As I understand it, distccd only should need to be able to compile
preprocessed files, so should it still work after I remove the linker,
headers(from libexec), lto-wrapper, etc?
Here's my gcc configure for the current working setup in case there is
../gcc-4.9.1/configure --prefix=/usr --libdir=/usr/lib
--libexecdir=/usr/lib --mandir=/usr/share/man --enable-languages=c,c++
--disable-nls --disable-multilib --disable-werror --with-system-zlib
--enable-clocale=gnu --enable-checking=release --enable-threads=posix
--without-headers --disable-libatomic --disable-libgomp
--disable-libitm --disable-libquadmath --disable-libsanitizer
--disable-libssp --disable-libvtv --disable-libcilkrts
--disable-libstdcxx --disable-libstdcxx-pch --disable-libstdc++-v3
--disable-libada --disable-libunwind-exceptions --disable-debug
--disable-bootstrap --disable-plugin --disable-lto --disable-shared
--enable-static
I expect gmail will make a mess of that - in my script it is nicely
broken into smaller lines, I promise!
Also, one final question I'm almost ashamed I need to ask - will
leaving cloog and isl out of the build have any effect on the code it
outputs from preprocessed source... or are they just to optimize the
compiler itself?
Any help or feedback would be appreciated,
Steven.
__
distcc mailing list http://distcc.samba.org/
https://lists.samba.org/mailman/listinfo/distcc
--
Martin
Loading...