Tüm destek kitaplıklarını bulun:
$ otool -L exefile
exefile:
@executable_path/libboost_something.dylib (compatibility version 0.7.0, current version 0.7.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 65.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
ve her biri için libboost_xxx.dylib
şunları yapın:
$ install_name_tool -change @executable_path/libboost_something.dylib /opt/local/lib/libboost_something.dylib exefile
ve son olarak otool
tekrar kullanarak doğrulayın :
$ otool -L exefile
exefile:
/opt/local/lib/libboost_something.dylib (compatibility version 0.7.0, current version 0.7.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 65.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
Elyordamsayfalarının: otool
install_name_tool
Bir süre EDIT Bir copy_dylibs.py
uygulama oluştururken otomatik olarak tüm bu işleri çözmek için bir python komut dosyası ( ) yazdı . Uygulama paketindeki /usr/local
veya /opt/local
uygulama paketindeki tüm kitaplıkları paketleyecek ve kullanılacak kitaplıklara başvuruları düzeltecektir @rpath
. Bu, Homebrew'u kullanarak üçüncü taraf kitaplığını kolayca kurabileceğiniz ve bunları kolayca paketleyebileceğiniz anlamına gelir.
Şimdi bu betiği github'da herkese açık hale getirdim .