Компилирующий плагин для Nuke против библиотек Boost
Я пытаюсь скомпилировать плагин для Nuke, который зависит от библиотек Boost. Я заполнил пути поиска по заголовкам / библиотекам и добавил библиотеки, чтобы связать двоичные файлы с библиотеками в XCode.
Он прекрасно компилируется, но когда Nuke пытается загрузить плагин my, появляется сообщение об ошибке:
Библиотека не загружена: libboost_atomic-mt-libstdC++. Dylib
Я считаю, что надо взломать что-то еще в XCode. Есть идеи?
2 ответа
Компиляция - это только полдела. Вы также должны убедиться, что Nuke может найти те же библиотеки во время выполнения, поскольку они динамически связаны.
Чтобы протестировать плагин, вы можете добавить путь к каталогу, содержащему библиотеки Boost, к DYLD_LIBRARY_PATH
переменная окружения (описана здесь).
После того, как вы проверили и подтвердили, что используемые вами библиотеки Boost совместимы со средой исполнения Nuke, вы сможете использовать otool
вот так, чтобы встроить абсолютные или относительные пути к библиотекам Boost в саму библиотеку плагинов в качестве долгосрочного решения.
Для macOS плагины NUKE должны быть собраны с GCC 4.0, чтобы быть совместимыми. Использование LLVM или GCC 4.2 вряд ли дает совместимые плагины. В macOS NUKE построен на Snow Leopard, поэтому The Foundry рекомендует сторонним разработчикам сделать то же самое! Если вы используете новейшие версии macOS, они обычно не совместимы со старыми.
Полученный в результате файл общего объекта (.dylib) должен быть перемещен в каталог ~/.nuke (или в путь_запуска NUKE).
Если вы хотите собрать компилятор Intel, замените его на g++ в вашем make-файле, однако вы должны убедиться, что libstdC++ включает библиотеки libs из установки GCC 4.0, чтобы быть совместимым. Также рекомендуется использовать 10.6 SDK для сборки плагинов.
Некоторые люди говорят, что вы можете, однако, установить GCC 4.2 (через Homebrew) и потенциально скомпилировать с этой версией. Но это зависит от вашего случая.
Должно быть полезно прочитать пост Джулика (2014) о сборке плагинов NUKE: http://live.julik.nl/2014/12/the-hell-of-building-nuke-dylibs