How to fix "broken ports"?
Ryan Schmidt
ryandesign at macports.org
Wed May 23 15:59:51 PDT 2012
On May 22, 2012, at 23:55, Marko Käning wrote:
> But well, you are right, in libphonon4.dylib there is the path also without the prefix:
> ---
> [ MP-devel ] :~ marko$ otool -L /opt/macports-test/lib/libphonon.4.dylib
> /opt/macports-test/lib/libphonon.4.dylib:
> lib/libphonon.4.dylib (compatibility version 4.0.0, current version 4.6.0)
> /opt/macports-test/lib/libQtCore.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
> /opt/macports-test/lib/libQtGui.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /opt/macports-test/lib/libQtDBus.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
>
For the record, that's not how it is on my system. On my system it appears to be made properly:
$ otool -L /opt/local/lib/libphonon.4.dylib
/opt/local/lib/libphonon.4.dylib:
/opt/local/lib/libphonon.4.dylib (compatibility version 4.4.0, current version 4.4.2)
/opt/local/lib/libQtDBus.4.dylib (compatibility version 4.7.0, current version 4.7.3)
/opt/local/lib/libQtXml.4.dylib (compatibility version 4.7.0, current version 4.7.3)
/opt/local/lib/libQtGui.4.dylib (compatibility version 4.7.0, current version 4.7.3)
/opt/local/lib/libQtCore.4.dylib (compatibility version 4.7.0, current version 4.7.3)
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.10)
> But my install_name_tool "magic"
> ---
> [ MP-devel ] :~ marko$ sudo install_name_tool -change lib/libphonon.4.dylib /opt/macports-test/lib/libphonon.4.dylib /opt/macports-test/lib/libphonon.4.dylib
> Password:
> [ MP-devel ] :~ marko$ otool -L /opt/macports-test/lib/libphonon.4.dylib/opt/macports-test/lib/libphonon.4.dylib:
> lib/libphonon.4.dylib (compatibility version 4.0.0, current version 4.6.0)
> /opt/macports-test/lib/libQtCore.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11)
> /opt/macports-test/lib/libQtGui.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /opt/macports-test/lib/libQtDBus.4.dylib (compatibility version 4.8.0, current version 4.8.0)
> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)
> [ MP-devel ] :~ marko$
> ---
> doesn't work on this one either! :-(
>
> What am I missing here?
install_name_tool is really a last resort kind of thing. You should be able to specify the library's install_name at link time (with the -install_name parameter), and indeed on my system that's presumably already happening; not sure why it's not on yours but perhaps a main.log file from the phonon installation would be illuminating.
More information about the macports-dev
mailing list