Bir .dylib'in OS X'teki sürüm bilgilerini nasıl belirleyebilirim?


12

OS X'te bir GUI veya CLI aracı kullanarak belirli bir dylib'in sürüm bilgilerini nasıl bulabilirim?

Yanıtlar:


11

Mach-O nesne dosyasının kullandığı paylaşılan kitaplıkların adlarını ve sürüm numaralarını görmek için otool( /usr/bin/otool) kullanabilirsiniz .

MacPro:~ mdouma46$ otool -L /usr/lib/libssl.0.9.7.dylib 
/usr/lib/libssl.0.9.7.dylib:
  /usr/lib/libssl.0.9.7.dylib (compatibility version 0.9.7, current version 0.9.7)
  /usr/lib/libcrypto.0.9.7.dylib (compatibility version 0.9.7, current version 0.9.7)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

MacPro:~ mdouma46$ otool -L /usr/lib/libssl.0.9.8.dylib 
/usr/lib/libssl.0.9.8.dylib:
  /usr/lib/libssl.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
  /usr/lib/libcrypto.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

MacPro:~ mdouma46$ otool -L /usr/lib/libgutenprint.2.dylib 
/usr/lib/libgutenprint.2.dylib:
  /usr/lib/libgutenprint.2.dylib (compatibility version 4.0.0, current version 4.0.0)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0)
  /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

MacPro:~ mdouma46$ otool -L /usr/lib/libcurl.4.dylib 
/usr/lib/libcurl.4.dylib:
  /usr/lib/libcurl.4.dylib (compatibility version 7.0.0, current version 7.0.0)
  /usr/lib/libssl.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
  /usr/lib/libcrypto.0.9.8.dylib (compatibility version 0.9.8, current version 47.0.0)
  /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP (compatibility version 1.0.0, current version 2.4.0)
  /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos (compatibility version 5.0.0, current version 6.0.0)
  /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
  /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

Her zaman mükemmel değildir, ancak anlamaya çalıştığınız herhangi bir özel durum sağlarsanız, daha fazla tavsiye verebilirim.

Ne yazık ki, otoolvarsayılan yüklemenin bir parçası değil, ancak Xcode geliştirici araçlarının Komut Satırı Araçları modülünün bir parçası olarak kullanılabilir. Edinmenin 2 yolu vardır otool:

İlk yol en kolay yol olabilir, ancak Komut Satırı Araçlarının 100 MB'ının üzerine 1.5 GB değerinde Xcode.app indirilmesini gerektirecektir. Bu yöntemin olası tarafı, Komut satırı araçlarının indirilmesini ve yüklenmesini otomatikleştirmeye yardımcı olabilir. İkinci yol, https://developer.apple.com/programs/register/ adresinde ( zaten ücretli bir hesabınız yoksa) ücretsiz bir Geliştirici hesabı oluşturmayı gerektirir (NOT: seçenek 1 bunu gerektirebilir, emin değilim, zaten ücretli bir üyeyim), ardından https://developer.apple.com/downloads/ adresine bağlanın ve indirme listesinden Xcode için uygun Komut Satırı Araçlarını indirin.

İlk rotaya giderseniz, https://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12 adresindeki uygulama mağazasında Xcode'u edinin .


Teşekkürler! Bu .dylibs için çalışıyor gibi görünüyor. Ben / opt / local / bin / ffmpeg üzerinde denedim ama ffmpeg kendisi sürüm numarasını vermez. Yürütülebilir dosyanın sürüm numarasını almak mümkün müdür? (Bunun gibi bir tür komut argümanından faydalanmayan genel bir çözüm --versiontercih edilir.)
HairOfTheDog
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.