Не удается установить libjson в C++ Встраивание в проект XCode 4
Я просто не могу понять, как установить libjson как часть моего C++ проекта. Я прошел через все в Интернете. Встраиваю это в мой проект.
Сначала я попробовал это
- Переместил каталог libjson в мой проект
- Закомментировано: #define JSON_LIBRARY
- Ран сделать
- Добавлен #include "libjson/libjson.h"
Проект строит нормально..
Добавил следующее в мой файл main.cpp:
JSONNode n = libjson::parse(json);
Сборка завершается с двумя ошибками:
Undefined symbols for architecture x86_64:
"JSONWorker::parse(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)", referenced from:
libjson::parse(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)in main.o
"internalJSONNode::deleteInternal(internalJSONNode*)", referenced from:
JSONNode::decRef() in main.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Я также попробовал make && sudo make install и скомпилировать проект вручную. Те же ошибки:
g++ main.cpp -o junk -I/usr/include/libjson -ljson
Я также попробовал:
SHARED=1 make && sudo SHARED=1 prefix=/usr/local make install
Наконец, я попытался скопировать файл libjson в свой проект, а также получил те же ошибки.
Пожалуйста, может кто-нибудь показать мне, что я делаю не так? Мы использовали quickjson, но предпочитаем внешний вид libjson. Основная проблема в том, что мы не можем установить его!
Другие использованные ссылки:
1 ответ
Я отвечаю на свой вопрос, потому что это была боль в шее. Вот что я сделал, чтобы заставить это работать.
- Закомментируйте #define JSON_LIBRARY в JSONOptions.h
- Запустить сделать
- Добавьте libjson.a в ваш проект
- Добавьте libjson.h в ваш проект
- Добавьте JSONOptions.h в ваш проект
- Добавьте #include "libjson.h" в ваш основной файл проекта
Вуаля. Надеюсь, ты не тратишь столько времени, как я на это...