For some value of x. Need to determine what value of x is reasonable from both a licensing and technical standpoint. I'm starting off the investigation by comparing release builds with and without a statically linked libstdc++ using gcc from the gcc 3.1 branch. More info as I see what the size/bloat implications of this are.
Summary: investigate static linking of libstdc++ for gcc > 3.x → figure out libstdc++ linkage theory for mozilla builds with gcc >= 3.x
OK, so far so good: Sizes of the exploded release tarball: dynamic libstdc++: 31.13 megabytes static libstdc++: 31.73 megabytes difference: ~600K Sizes of the gzipped tarballs themselves: dynamic libstdc++: 12.06 megabytes static libstdc++: 12.27 megabytes difference: ~200K The static builds were made by adding the following two lines to mozconfig: CXX=gcc-31branch; export CXX LIBS="-Wl,-Bstatic -lstdc++ -Wl,-Bdynamic"; export LIBS
Status: NEW → ASSIGNED
You should use '-static-libgcc' instead. Not that I think it makes any difference ;)
I suspect that static is only a small amount larger than dynamic because we use no libstdc++ functions (except for operator new + friends).
How's it coming along?
All figured out. Static linkage was chosen.
Assignee: dmose → leaf
Status: ASSIGNED → NEW
Status: NEW → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.