Re: [gentoo-dev] GCC upgrades, FUD and gentoo documentation
On Saturday 08 October 2011 18:57:23 James Cloos wrote: SV == Sven Vermeulen sw...@gentoo.org writes: SV - Since 3.4.0/4.1.0, the C++ ABI is forward-compatible, so rebuilds SV from that version onwards should not be needed That is not generally true. I use gcc-4.5 as my system gcc, but mostly use 4.6 when building things outside of portage. I still run into compilation errors with C++ which go away if I compile said code with 4.5. GCC’s C++ abi is only *mostly* forwards compatible, not *entirely*. i think you're hitting a bug that has nothing to do with the ABI compatibility. i.e. Bug 297685. -mike signature.asc Description: This is a digitally signed message part.
Re: [gentoo-dev] GCC upgrades, FUD and gentoo documentation
MT == Matt Turner matts...@gentoo.org writes: MT Is that a problem with the ABI, or just that gcc-4.6 is more strict? MT I think it's the latter. The failure occurs at the linking stage, not the compiling stage. Ie, ln(1) cannot find some of the symbols it needs if the .so was compiled with 4.5 and the .o files with 4.6. Which looks like an ABI issue, yes? Again, though, only for some libs. And I do not remember which. -JimC -- James Cloos cl...@jhcloos.com OpenPGP: 1024D/ED7DAEA6
Re: [gentoo-dev] GCC upgrades, FUD and gentoo documentation
On Sun, Oct 9, 2011 at 4:35 PM, James Cloos cl...@jhcloos.com wrote: MT == Matt Turner matts...@gentoo.org writes: MT Is that a problem with the ABI, or just that gcc-4.6 is more strict? MT I think it's the latter. The failure occurs at the linking stage, not the compiling stage. Ie, ln(1) cannot find some of the symbols it needs if the .so was compiled with 4.5 and the .o files with 4.6. Which looks like an ABI issue, yes? Again, though, only for some libs. And I do not remember which. Right, if it fails at link time, it's possibly an ABI incompatibility. I just haven't ever experienced this myself. Matt
[gentoo-dev] GCC upgrades, FUD and gentoo documentation
Hi guys There is some FUD regarding GCC upgrades and I don't have the proper knowledge to write a correct document on GCC upgrades. As you are currently aware, we have a GCC upgrade guide [1], but it has seen its last update in 2008. Since then, things have undoubtedly changed. What I can find on GCC upgrades and their apparent need (or no-need) for rebuilding stuff: - Since 3.4.0/4.1.0, the C++ ABI is forward-compatible, so rebuilds from that version onwards should not be needed - The fix_libtool_files.sh command is now part of the toolchain eclass, so doesn't need to be ran by users anymore The only thing I fail to find out is why libtool needs to be rebuild (if it still needs to be). There are some sources telling it always needs to be rebuild (RedHat seems to fix the two togather at all times: gcc and libtool), others state that this is similar towards the C++ ABI, so not needed anymore since 3.4.0/4.1.0. I revamped the GCC Upgrade guide [2] with what I think is correct nowadays, but this is, to be honest, a bit out of my league. That's why I'm asking you, development community at large, to give some feedback on this, allowing the GDP to get rid of the FUD once and for all ;-) Wkr, Sven Vermeulen [1] http://www.gentoo.org/doc/en/gcc-upgrading.xml [2] http://dev.gentoo.org/~swift/docs/previews/gcc-upgrading.xml
Re: [gentoo-dev] GCC upgrades, FUD and gentoo documentation
SV == Sven Vermeulen sw...@gentoo.org writes: SV - Since 3.4.0/4.1.0, the C++ ABI is forward-compatible, so rebuilds SV from that version onwards should not be needed That is not generally true. I use gcc-4.5 as my system gcc, but mostly use 4.6 when building things outside of portage. I still run into compilation errors with C++ which go away if I compile said code with 4.5. GCC’s C++ abi is only *mostly* forwards compatible, not *entirely*. -JimC -- James Cloos cl...@jhcloos.com OpenPGP: 1024D/ED7DAEA6
Re: [gentoo-dev] GCC upgrades, FUD and gentoo documentation
On Sat, Oct 8, 2011 at 6:57 PM, James Cloos cl...@jhcloos.com wrote: SV == Sven Vermeulen sw...@gentoo.org writes: SV - Since 3.4.0/4.1.0, the C++ ABI is forward-compatible, so rebuilds SV from that version onwards should not be needed That is not generally true. I use gcc-4.5 as my system gcc, but mostly use 4.6 when building things outside of portage. I still run into compilation errors with C++ which go away if I compile said code with 4.5. GCC’s C++ abi is only *mostly* forwards compatible, not *entirely*. Is that a problem with the ABI, or just that gcc-4.6 is more strict? I think it's the latter. Matt