Неопределенный символ с библиотекой JsonCPP в Linux 64. Что мне не хватает?

Я использую JsonCPP в качестве парсера для Json в C++, проблема в том, когда я объявляю свою переменную Json::Value root;, он очень хорошо компилируется, но когда я его использую, программа вылетает, показывая следующее сообщение: undefined symbol: _ZN4Json5ValueD1Ev, Чего мне не хватает?

Я думал, что это проблема компоновщика, поэтому я поставил свою библиотеку libjson_linux-gcc-4.1.2_libmt.so в /usr/lib а также /usr/lib64и.h к /usr/include/json поэтому, когда я вызываю библиотеку в моем коде, я делаю #include <json/json.h>,

Все хорошо, потому что я могу очень хорошо скомпилировать! но я получаю такие же сбои.

Есть ли какой-то путь, который я не могу найти по ссылке?

Спасибо вам всем!

PD: я забыл сказать, что я не компилирую с g++, я компилирую с помощью make-файла

2 ответа

В дополнение к включению файла заголовка, вам также необходимо указать ссылку на библиотеку.

На этапе связывания добавьте аргумент -ljson_linux-gcc-4.1.2_libmt

Это работает для меня, помещая libjson_linux-gcc-4.1.2_libmt.so в тот же каталог вашей программы, который находится при его запуске.

Другие вопросы по тегам