How to fix "broken ports"?

Marko Käning MK-MacPorts at techno.ms
Tue May 22 21:55:20 PDT 2012


On May 21, 2012, at 10:51 PM, Ryan Schmidt wrote:

> What does "otool -L /opt/macports-test/lib/libphonon.4.dylib" say?
> 
> The output we want to see is:
> 
> /opt/macports-test/lib/libphonon.4.dylib:
> 	/opt/macports-test/lib/libphonon.4.dylib (compatibility version 4.4.0, current version 4.4.2)
> 	/opt/macports-test/lib/libQtDBus.4.dylib (compatibility version 4.7.0, current version 4.7.3)
> 	/opt/macports-test/lib/libQtXml.4.dylib (compatibility version 4.7.0, current version 4.7.3)
> 	/opt/macports-test/lib/libQtGui.4.dylib (compatibility version 4.7.0, current version 4.7.3)
> 	/opt/macports-test/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)
> 
> If instead the second line reads:
> 
> 	lib/libphonon.4.dylib (compatibility version 4.4.0, current version 4.4.2)
> 
> then that would explain the problem, and the fix would need to occur in the phonon port.
> 

Well, I read this line from my previous email:
---
Could not open lib/libphonon.4.dylib: Error opening or reading file (referenced from /opt/macports-test/lib/libphononexperimental.4.6.0.dylib)
DEBUG: Marking /opt/macports-test/lib/libphononexperimental.4.6.0.dylib as broken
---
as such that the libphonon4.dylib could be opened since the libphononexperimental.4.6.0.dylib couldn't access the file.
otool showed why this happened, i.e. because of the missing prefix in front of the lib.



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)
---




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?


More information about the macports-dev mailing list