Настройка OpenALPR с c ++, неопределенная ссылка.

Мне нужно интегрировать библиотеку OpenALPR в мою программу на C ++. К сожалению, я не могу заставить работать ссылки.

openalpr.lib находится в C: \ path \ to \ alpr, alpr.h заголовок в C: \ path \ to \ alpr \ включает все файлы * .dll в каталоге с главный файл.
Система Windows7, компилятор Gcc 5.3.

Текущая команда сборки:

g++ -Wall -fexceptions -g -IC:\path\to\alpr\include -c C:\path\to\project\main.cpp -o obj\main.o

g++ -LC:\path\to\alpr -o bin\test.exe obj\main.o -lopenalpr

код:

#include <alpr.h>
int main()
{
alpr::Alpr openalpr("us", "openalpr.conf");
return 0;
}

ошибка:

undefined reference to `alpr::Alpr::Alpr(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)'

И так далее, и так далее, множество похожих «неопределенных ссылок».

Библиотека OpenALPR загружается в двоичной версии из:
https://github.com/openalpr/openalpr/wiki/Compilation-instructions-(Windows)

Я должен построить библиотеку из источников? Может я что то пропустил? Заранее спасибо.

1

Решение

GCC5 и C ++ 11 ABI:

Пользователи, которые зависят от сторонних библиотек или интерфейсов плагинов, которые все еще используют старый ABI, могут создавать свой код с -D_GLIBCXX_USE_CXX11_ABI=0 и все должно работать нормально. В большинстве случаев будет очевидно, когда этот флаг необходим из-за ошибок компоновщика, жалующихся на нерешенные символы, связанные с __cxx11,

Попробуйте скомпилировать с -D_GLIBCXX_USE_CXX11_ABI=0,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]