Связывание библиотек Macports с приложением XCode - PullRequest
2 голосов
/ 19 августа 2010

Я пытаюсь распространить зависимости моего приложения с приложением.

У меня установлены пакеты macports librsvg, boost и cairo только для 64-битной системы на моей системе Snow Leopard. Когда я создаю пакет .app своей программы, он не работает на компьютерах без macports и соответствующих библиотек, потому что они не включены в приложение, которое ищет библиотеки в /opt.

.

Я попробовал флаг --static для статического связывания, но это вызвало ошибки libcrt0.

Каков наилучший метод для связывания библиотек MacPorts и их зависимостей с приложением OSX, подходящим для одиночного распространения?

Ответы [ 3 ]

2 голосов
/ 19 августа 2010

Вы захотите скопировать библиотеки в свой пакет приложений, используя Фаза сборки файлов копирования . dylibs следует поместить в каталог Frameworks в комплекте приложений. Вам также нужно будет добавить библиотеки в ваш проект Xcode.

0 голосов
/ 16 ноября 2013

Я должен был просто сделать это для jsoncpp. Я перешел к настройкам компоновщика в проекте> Фазы сборки> Связать двоичные файлы с библиотеками, затем использовал команду add other, чтобы перейти к пути моей библиотеки и добавить библиотеку из папки, которая по умолчанию будет находиться в каталоге opt / local / lib настройка для Macport linker settings

получить заголовочные файлы было немного сложнее. В этом случае я перешел к usr / Include, нашел файл / папку с заголовками, скопировал его в свой проект и в файле cpp добавил строку включения с кавычками ("")

например, переместил каталог / usr / Include / json в папку проекта RestTemplate, используя copy. затем добавлен в main.cpp

#include "json/json.h"
0 голосов
/ 19 августа 2010

Попробуйте использовать py2app для создания автономного приложения.

...