На OS X как узнать, какие версии OS X совместимы с общей библиотекой?

Это похоже на этот вопрос: на OS X, как мне узнать, для какой архитектуры скомпилирована общая библиотека?

Кроме того, я хочу знать, будет ли работать.dylib на 10.5.x или 10.4, например.

1 ответ

Запустите otool -L в.dylib. Это покажет вам библиотеки, на которых это зависит, и их версии совместимости. Затем запустите otool -L против библиотек из интересующей ОС. Это покажет вам (в первой строке) текущую версию этой библиотеки. Если текущая версия является, по крайней мере, версией совместимости, то эта библиотека может использоваться вашим.dylib. Повторите все библиотеки.

Там не много ярлыка. В.dylib нет прямого указания на какой SDK он был связан. Он косвенно и неявно делает это через зависимости библиотеки.

Если.dylib ссылается на центральную системную библиотеку, например /usr/lib/libSystem.B.dylib (что вполне вероятно), то вы можете использовать совместимость с этой библиотекой в качестве прокси для совместимости с версией ОС в целом,

licensed under cc by-sa 3.0 with attribution.