Связывание файловой системы Boost в XCode 3.2 (MacPorts) - PullRequest
3 голосов
/ 07 марта 2012

Я использую XCode 3.2 и установил boost, используя проект MacPorts (как релиз, так и отладку), однако затрудняюсь связать свое приложение с boost :: filesystem

Я установил свою библиотекупоиск пути к / opt / local / lib, но я все еще получаю неразрешенные ссылки при связывании проекта.

Я заметил в другом посте, что добавляю -lboost_system к "другим флагам компоновщика", но когда я делаю это, я получаю -libboost_system.dylib, файл был создан для неподдерживаемого формата файлов, который не связан с архитектурой (i386).

MacPorts не устанавливает нужные библиотеки или я что-то упустил?

Мартин

Ответы [ 2 ]

5 голосов
/ 07 марта 2012

Вы не указали, с какой версией ОС вы его собираете.Я предполагаю, что по умолчанию MacPort x64 при сборке и установке портов. Удалите boost из MacPort, затем переустановите его с универсальным вариантом .

%% sudo port uninstall boost
%% sudo port install boost +universal
1 голос
/ 07 марта 2012

Возможно, что имя библиотеки не совсем boost_system, а может быть boost_system-mt (-mt - потому что boost был скомпилирован с безопасностью потоков) или даже какой-то другой суффикс.

Чтобы быть уверенным, вы можете посмотреть имя в /opt/local/lib:

find /opt/local/lib -name "libboost_system*"
...