Opened 6 years ago
Closed 5 years ago
#56618 closed defect (fixed)
wxWidgets-3.0: stdlibc++ mismatch
Reported by: | iefdev (Eric F) | Owned by: | mojca (Mojca Miklavec) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.5.2 |
Keywords: | Cc: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) | |
Port: | wxWidgets-3.0 |
Description
In addition to #56616, here's a separate ticket for wxWidgets-3.0.
$ sudo port -d -y rev-upgrade #snip wxWidgets-3.0 is using libstdc++ (this installation is configured to use libc++)
Attachments (1)
Change History (13)
comment:1 Changed 6 years ago by jmroot (Joshua Root)
Owner: | set to mojca |
---|---|
Status: | new → assigned |
comment:2 Changed 6 years ago by mojca (Mojca Miklavec)
comment:3 Changed 6 years ago by iEFdev
I'm on 10.7.5.
$ otool -L /opt/local/lib/libgcc/libstdc++.6.dylib /opt/local/lib/libgcc/libstdc++.6.dylib: /opt/local/lib/libgcc/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.24.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0) /opt/local/lib/libgcc/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)
comment:4 follow-up: 5 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)
No, which files installed by wxWidgets-3.0 link with libstdc++.6.dylib?
Why is anything in wxWidgets-3.0 ever linking with FSF GCC libstdc++? I don't see anything in the wxWidgets-3.0 portfile or the wxWidgets-1.0 portgroup that would account for that.
comment:5 Changed 6 years ago by iEFdev
Replying to ryandesign:
No, which files installed by wxWidgets-3.0 link with libstdc++.6.dylib?
Why is anything in wxWidgets-3.0 ever linking with FSF GCC libstdc++? I don't see anything in the wxWidgets-3.0 portfile or the wxWidgets-1.0 portgroup that would account for that.
I'm not really sure how to find all those file, but just by taking the first file in its lib folder, libstdc++ shows up
$ otool -L /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.0/lib/libwx_baseu_net-3.0.0.4.0.dylib /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.0/lib/libwx_baseu_net-3.0.0.4.0.dylib: /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.0/lib/libwx_baseu_net-3.0.dylib (compatibility version 5.0.0, current version 5.0.0) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 153.0.0) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 17.0.0) /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0) /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11) /opt/local/lib/libiconv.2.dylib (compatibility version 9.0.0, current version 9.0.0) /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.0/lib/libwx_baseu-3.0.0.4.0.dylib (compatibility version 5.0.0, current version 5.0.0) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 52.0.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 635.21.0)
I got wxWidgets with pgAdmin3 (#56617) as a dependency. Is that something that could have changed it - as a part of the installation? I can try uninstall both and bring them back separately.
Changed 6 years ago by iEFdev
Attachment: | wxWidgets_logs.tar.xz added |
---|
comment:6 follow-up: 8 Changed 6 years ago by mojca (Mojca Miklavec)
I did not inspect the log yet, but the message says this installation is configured to use libc++
. Does that mean that you are using LibcxxOnOlderSystems?
comment:7 Changed 6 years ago by mojca (Mojca Miklavec)
The port was apparently compiled with /usr/bin/llvm-g++-4.2
, so linking against libstdc++
is expected. I'm not sure about the comment that MacPorts would expect the port to be using libc++
unless the global configuration was changed without blacklisting compilers that are not capable of C++11 anyway.
comment:8 Changed 6 years ago by iEFdev
Replying to mojca:
I did not inspect the log yet, but the message says
this installation is configured to use libc++
. Does that mean that you are using LibcxxOnOlderSystems?
Yes, it does... :)
Replying to mojca:
The port was apparently compiled with
/usr/bin/llvm-g++-4.2
, so linking againstlibstdc++
is expected.I'm not sure about the comment that MacPorts would expect the port to be usinglibc++
unless the global configuration was changed without blacklisting compilers that are not capable of C++11 anyway.
Yes, I guess it must be the same thing as Ryan mentioned here: comment:ticket:56616:6
comment:9 Changed 6 years ago by kencu (Ken)
try doing the exact same compiler forcing you did in flac
and see what you get then
sudo port uninstall wxWidgets-3.0 sudo port -v install wxWidgets-3.0 configure.compiler=macports-clang-5.0
comment:10 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Cc: | MarcusCalhoun-Lopez added |
---|
comment:11 Changed 6 years ago by mf2k (Frank Schima)
Keywords: | cxx_stdlib removed |
---|
comment:12 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
I think this is no longer a problem, now that MacPorts 2.6.0 and later default to libc++ on 10.6-10.8. wxWidgets-3.0-3.0.4_1.darwin_11.x86_64.tbz2 on our packages server today shows its files are linked with libc++ as they should be.
Which OS version are you using? Which files are linked against
libstdc++
?