Static linked cross tools

Allen Curtis acurtis@onz.com
Tue Oct 19 14:42:00 GMT 2004


> So the question is:
> Why do you want statically linked tools? Do you need to run the tools 
> on
> different systems with different libraries, or any other reason to not 
> use
> dynamic libraries *to run the tools in the toolchain*? Or do you only 
> need
> your crosstools to generate statically linked programs?
>
We want to build the executables statically linked so they can run on 
different workstations. Typically we put the development tools on a 
server and everyone uses the same toolchain. This does not mean that we 
do not want to create dynamically linked programs.

> - For statically linked crosstools, but still the ability to build
> dynamically linked targets:
>
> BINUTILS_MAKE_OPTIONS="LDFLAGS=-all-static"
> # I would advice against using BINUTILS_EXTRA_CONFIG since it's issued
> # to configure - we don't need that
> make $BINUTILS_MAKE_OPTIONS all
>
I believe I tried this and it did not work. I will try again. Perhaps 
there was something else wrong with my environment.

> GCC_MAKE_OPTIONS="LDFLAGS=-static"
> # final gcc only
> make $GCC_MAKE_OPTIONS all
>
GCC didn't seem to mind building as per the new scripts. The problem 
was building BINUTILS.

> - To generate a dynamically linked toolchain, only suited to generate 
> static
> binaries:
> BINUTILS_EXTRA_CONFIG="--disable-shared"
>
> GLIBC_EXTRA_CONFIG="--disable-shared"
>
> GCC_EXTRA_CONFIG="--disable-shared"
> (this is untested by me)
>
>
> I do not believe the above are mutually exclusive, you can probably 
> use both
> to generate a statically linked toolchain that can only generate 
> statically
> linked targets.
>
> I have little time to spare on my hands now, I'm sorry I can't give 
> you any
> tested configurations. I have generated several statically linked 
> toolchains
> by hand, using above sequence, though.
>
What version of BINUTILS have you built?

BTW: I could not find instructions for statically linking BINUTILS or 
GCC. Is there a website that explains these options?

Thanks


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list