On 2010-Jan-31 11:15:08 +0000, "Dr. David Kirkby" <david.kir...@onetel.net> wrote: >Alex Ghitza wrote: >> 1) Build sage-4.3.1 with gcc-4.4.2 on Arch Linux; Sage runs fine, passes >> doctests, etc. Someone else gets the binary and can use it to run Sage >> 2) Upgrade gcc to gcc-4.4.3 >> 3) Try to run sage, get errors that the original poster listed > >So you are saying that simply updating gcc, causes Sage to no longer >work? That seems very naughty of the shipped gcc/libc if that is >happening. I could understand if one removed a new version of gcc, >and replaced it with an old version this might happen.
This is definitely undesirable - especially with only a 0.0.1 change in the compiler. >But I think when shipping binaries, we should include ALL the >libraries used by gcc with Sage. That means: > >* libgcc_s >* libgfortran >* libstdc++. This opens up two cans of worms: 1) Since those libraries won't be located where the compiler originally expected to find them, Sage will need to have appropriate LD_LIBRARY_PATH (or equivalent) hooks. 2) There may be licensing issues distributing libraries associated with non-gcc compilers. >I've said this before, but nobody has really agreed with me. I think >there could be issues if Sage is built with a new gcc, and someone >has only an old one. Definitely, if someone only has gcc3 libraries installed then trying to use an application compiled with gcc4 could be problematic. Finding the exact restrictions probably means asking the GCC maintainers. There are also likely to be different restrictions on compiling an application with gcc-X and trying to run it when only gcc-Y is installed and compiling bits of an application with gcc-X and other bits with gcc-Y and expecting it to work. -- Peter Jeremy
pgpJgpHEcirGc.pgp
Description: PGP signature