1 |
On December 27, 2016 6:55:31 PM GMT+01:00, Dale <rdalek1967@×××××.com> wrote: |
2 |
>Alan Grimes wrote: |
3 |
>> Holger Hoffstätte wrote: |
4 |
>>> ..indicates a mismatch in C++11 ABI which changed in gcc5. What |
5 |
>happens is that one the |
6 |
>>> dependencies of openimageio was built against the old C++11 |
7 |
>std::string ABI (hence the |
8 |
>>> link errors), and needs to be rebuilt. It looks to be "Imf" aka |
9 |
>libIlmImf, |
10 |
>>> whatever that is. Try to rebuild it with --oneshot and it should |
11 |
>work. |
12 |
>>> If a similar error pops up for a different dependency, repeat. :) |
13 |
>>> |
14 |
>>> -h |
15 |
>> Yeah, I emptytree world my system after each Y in X.Y.Z compiler |
16 |
>version |
17 |
>> bump. Since I sad it, everyone will tell you it's bad advice but |
18 |
>really |
19 |
>> not. The binary distros will compile everything with the same |
20 |
>compiler |
21 |
>> so crap doesn't happen. Now it's not super important but then you |
22 |
>have |
23 |
>> no idea how many other abi link errors are hiding out there. |
24 |
>> |
25 |
>> |
26 |
> |
27 |
>I do the same here. When I switch to a new version of gcc, I do a |
28 |
>emerge -e world. If I've read that it really changes some things, like |
29 |
>this one appears to do, I do it twice. The second time may be overkill |
30 |
>but I'd rather have overkill than some weird problem that is difficult |
31 |
>to figure out the solution. I don't think anyone would say doing that |
32 |
>is bad. A ounce of prevention is always better than a pound of cure. |
33 |
>;-) |
34 |
> |
35 |
>There's another upgrade that I do that after too. I can't recall the |
36 |
>name right now but maybe it is glibc or something???? |
37 |
> |
38 |
>Dale |
39 |
> |
40 |
>:-) :-) |
41 |
|
42 |
I usually do (if encountering weird issues): |
43 |
# emerge -1 gcc |
44 |
# emerge -1 glibc |
45 |
# emerge -e @system |
46 |
# emerge -e @world |
47 |
|
48 |
If there is a better method requiring less time, please let me know. |
49 |
|
50 |
A full rebuild like this into binary packages using a chroot is a good way to prepare for a toolchain update. That way all the packages are already prepared and the downtime will be minimized. |
51 |
|
52 |
-- |
53 |
Joost |
54 |
|
55 |
|
56 |
-- |
57 |
Sent from my Android device with K-9 Mail. Please excuse my brevity. |