SoQt linking error on Mavericks (10.9.3)
Mark Brethen
mark.brethen at gmail.com
Sat Jun 28 15:14:51 PDT 2014
On Jun 28, 2014, at 1:44 PM, Brandon Allbery <allbery.b at gmail.com> wrote:
>
> On Sat, Jun 28, 2014 at 2:23 PM, Mark Brethen <mark.brethen at gmail.com> wrote:
> So either the coin or soqt framework is bundled incorrectly? How would check which is the culprit? I just installed coin +aqua and soqt +aqua using '--without-framework' and did not get any link errors.
>
> The implication from what I've seen is that something is not using install_name_tool properly to make the shared objects bundle-relative, yes. I haven't done much with bundles but could probably find the Apple docs on how to set the install_name appropriately for framework bundles.
>
> --
> brandon s allbery kf8nh sine nomine associates
> allbery.b at gmail.com ballbery at sinenomine.net
> unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net
Coin:
brethen-mbp:Libraries marbre$ ls -al
total 14776
drwxr-xr-x 5 root wheel 170 Jun 28 16:43 .
drwxr-xr-x 6 root wheel 204 Jun 28 16:43 ..
-rwxr-xr-x 1 root wheel 7555684 Jun 28 16:43 libCoin.60.1.3.dylib
lrwxr-xr-x 1 root wheel 20 Jun 28 16:43 libCoin.60.dylib -> libCoin.60.1.3.dylib
lrwxr-xr-x 1 root wheel 20 Jun 28 16:43 libCoin.dylib -> libCoin.60.1.3.dylib
brethen-mbp:Libraries marbre$ otool -L libCoin.60.1.3.dylib
libCoin.60.1.3.dylib:
Inventor.framework/Versions/C/Inventor (compatibility version 62.0.0, current version 62.3.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.16.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0)
For SoQt:
brethen-mbp:Libraries marbre$ ls -al
total 1240
drwxr-xr-x 5 root wheel 170 Jun 28 17:02 .
drwxr-xr-x 6 root wheel 204 Jun 28 17:02 ..
-rwxr-xr-x 1 root wheel 624900 Jun 28 17:02 libSoQt.20.5.0.dylib
lrwxr-xr-x 1 root wheel 20 Jun 28 17:02 libSoQt.20.dylib -> libSoQt.20.5.0.dylib
lrwxr-xr-x 1 root wheel 20 Jun 28 17:02 libSoQt.dylib -> libSoQt.20.5.0.dylib
brethen-mbp:Libraries marbre$ otool -L libSoQt.20.5.0.dylib
libSoQt.20.5.0.dylib:
SoQt.framework/Versions/A/SoQt (compatibility version 26.0.0, current version 26.0.0)
/opt/local/Library/Frameworks/QtOpenGL.framework/Versions/4/QtOpenGL (compatibility version 4.8.0, current version 4.8.6)
/opt/local/Library/Frameworks/QtGui.framework/Versions/4/QtGui (compatibility version 4.8.0, current version 4.8.6)
/opt/local/Library/Frameworks/QtCore.framework/Versions/4/QtCore (compatibility version 4.8.0, current version 4.8.6)
Inventor.framework/Versions/C/Inventor (compatibility version 62.0.0, current version 62.3.0)
/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
Qt4-mac, Coin and SoQt are consistent, in that they all use symlinks to the actual library. Those in /usr/lib however use absolute paths.
Mark
More information about the macports-dev
mailing list