Используйте libxlsxwriter без CocoaPods в проекте macOS
Мой проект (Objective C, macOS, Xcode 11) не использует CocoaPods, и я хотел бы сохранить его в таком виде.
Я хочу использовать libxlsxwriter для экспорта данных в формате Excel. Я клонировал libxlsxwriter из GitHub и построил его. Теперь у меня естьlibxlsxwriter.a
а также lbixlsxwriter.dylib
.
Что я пробовал до сих пор: я выполнил инструкции на этом сайте (спасибо за ссылку), чтобы включить dylib. В настройках "Общие"lbixlsxwriter.dylib
отображается как "Вставить и подписать", в "Фазах сборки" он указан в разделе "Связать двоичный файл с библиотеками" и имеет свой собственный раздел "Копирование файлов". Запуск из Xcode дает мне
dyld: Library not loaded: /usr/lib/libxlsxwriter.dylib
Referenced from: /Users/XXX/Library/Developer/Xcode/DerivedData/XXXefxsacdsioejobcumpvsbklqguri/Build/Products/Debug/XXX.app/Contents/MacOS/XXX
Reason: image not found
Что мне нужно добавить в свой проект: папку include со всеми файлами заголовков и обеими этими библиотеками? Как мне настроить общие настройки и этапы сборки?
1 ответ
Если у вас есть статическая библиотека и только один загрузчик, например. основной исполняемый файл (поэтому вам не нужно делиться им между своими компонентами), тогда вам вообще не нужна динамическая библиотека.
Просто добавьте свой libxlsxwriter.a
в Target > General > Frameworks and Libraries
раздел, и он будет связан с вашим исполняемым файлом и просто будет работать.
Если вам действительно нужна общая динамическая библиотека, вам нужно использовать rpath
+ LD_RUNPATH_SEARCH_PATHS
сочетание. (Дайте мне знать, если вам понадобятся подробности по этому поводу).