2014-12-29 2 views
1

Я пытаюсь построить библиотеку poco на osx 10.9 с помощью clang ++.
Я бегу make CXXFLAGS+=-stdlib=libstdc++ CFLAGS+=-stdlib=libstdc++ LDFLAGS+=-stdlib=libstdc++.
It've успешно свел все .o файлы:
osx - Ошибка связывания при создании библиотеки POCO

** Компиляция SRC/UUIDGenerator.cpp (релиз, долевой) лязг ++ -Iinclude -I/Users/Croco/Работа/росо-1.6.0- все/CppUnit/include -I/Пользователи/croco/Work/poco-1.6.0-all/CppUnit/WinTestRunner/include -I/Пользователи/croco/Work/poco-1.6.0-all/Foundation/include -I/Пользователи/croco/Work/poco-1.6.0-all/XML/include -I/Пользователи/croco/Work/poco-1.6.0-all/JSON/include -I/Пользователи/croco/Work/poco-1.6. 0-all/Util/include -I/Пользователи/croco/Work/poco-1.6.0-all/Net/include -I/Пользователи/croco/Work/poco-1.6.0-all/Crypto/include -I/Пользователи/croco/Work/poco-1.6.0-all/NetSSL_OpenSSL/include -I/Пользователи/croco/Work/poco-1.6.0-all/Data/include -I/Пользователи/croco/Work/poco-1.6. 0-all/Data/SQLite/include -I/Пользователи/croco/Work/poco-1.6.0-all/Data/ODBC/in clude -I/Пользователи/croco/Work/poco-1.6.0-all/Data/MySQL/include -I/Пользователи/croco/Work/poco-1.6.0-all/MongoDB/include -I/Пользователи/croco/Work/poco-1.6.0-all/Zip/include -I/Пользователи/croco/Work/poco-1.6.0-all/PageCompiler/include -I/Пользователи/croco/Work/poco-1.6.0-all/PageCompiler/File2Page/include -stdlib = libstdC++ -DNDEBUG -O2 -fasm-blocks -fPIC -c src/UUIDGenerator.cpp -o /Users/croco/Work/poco-1.6.0-all/Foundation/obj/ Darwin/x86_64/release_shared/UUIDGenerator.o

Но при связывании, -stdlib флаг не используется, и я получаю некоторые ошибки, как это:

Неопределенные символы для архитектуры x86_64:
«std :: basic_string, std :: allocator> :: data() const", на которые ссылаются: Poco :: UnicodeConverter :: convert (std :: basic_string, std :: allocator > Уст &, станд :: строка &) в UnicodeConverter.o "станд :: basic_string, станд :: распределитель> :: длина() Const", ссылки из: Poco :: UnicodeConverter :: новообращенный (станд :: basic_string, станд :: распределитель> Уст &, станд :: строка &) в UnicodeConverter.o

Что я делаю Неправильно?

ответ

1

Ну, мое решение состоит в том, чтобы поставить флаг -stdlib в build/config/Darwin-clang и настроить сборку с требуемым Darwin-clang config.

Смежные вопросы