1 |
On 12/1/15 6:25 AM, Michał Górny wrote: |
2 |
> |
3 |
> Dnia 30 listopada 2015 12:17:32 CET, "Anthony G. Basile" <blueness@g.o> napisał(a): |
4 |
>> |
5 |
>> different direction: what about building with |
6 |
>> rpath=/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/ and then making sure that |
7 |
>> portage respects that library file during any --depclean or |
8 |
>> @preserved-rebuild? i'm not sure how we'd |
9 |
>> inject|||LDFLAGS=-Wl,-rpath=... consistantly and sanely into all c++ |
10 |
>> builds. |
11 |
>> |
12 |
>> this would solve all problems i can see: 1) gcc-config reshuffles |
13 |
>> /etc/ld.so.conf.d/05gcc-<tuple>.conf but rpath takes presidence, 2) the |
14 |
>> correct library symbols are guaranteed to be there in both exe and lib. |
15 |
>> |
16 |
>> 3) it pro-actively guards against abi mismatches when switching gcc |
17 |
>> even |
18 |
>> for other languages like fortran, java, obj-c.| |
19 |
> I'm afraid any of those problems are really affecting us here. GCC maintains backwards ABI compatibility in the library, so applications will continue to work as long as runtime libstdc++ isn't older than build time. |
20 |
> |
21 |
> Currently, we always force newest installed libstdc++ at runtime, and use the version matching GCC version at build time, so that works. |
22 |
> |
23 |
> So the best thing your solution could give us is loading the wrong version of libstdc++ when you link to a library built against older one. |
24 |
Yeah there are two problems going on here and the libsigc++-2.6 is the |
25 |
c++98 <=> 11 problem. So on that bug we're talking about selectively |
26 |
adding -std=c++11 (or possibly gnu++11) to packages. This may get |
27 |
messy. I'm wondering if it isn't possible to just globally add |
28 |
CXXFLAGS+="-std=c++11". This should work because anything written with |
29 |
c++98 will compile under c++11 (although not vice versa) although I |
30 |
don't know how we'd migrate existing systems. |
31 |
|
32 |
-- |
33 |
Anthony G. Basile, Ph.D. |
34 |
Gentoo Linux Developer [Hardened] |
35 |
E-Mail : blueness@g.o |
36 |
GnuPG FP : 1FED FAD9 D82C 52A5 3BAB DC79 9384 FA6E F52D 4BBA |
37 |
GnuPG ID : F52D4BBA |