Ошибка компиляции Affdex SDK с неопределенной ссылкой на Visualizer :: Visualizer () - PullRequest
0 голосов
/ 07 марта 2019

Я хочу установить Affectiva SDK 4.0.0 для Linux и, следовательно, начал работать с примерами приложений из https://github.com/Affectiva/cpp-sdk-samples

У меня Ubunutu 16.04, OpenCV 2.4.11, Boost 1.63, cmake 3.8.1, предварительно установленный gcc 5.5.0 и вручную установленный gcc 5.4.0 (потому что я не смог найти правильную настройку для gcc 5.4.1, как требуется).

Когда я пытаюсь запустить команду ниже для компиляции кодаиз папки демо-видео:

g++ video_analyse.cpp -o video_analyse -std=c++11 -I$HOME/affdex-sdk/include -L$HOME/affdex-sdk/lib -I$HOME/sdk-samples/common -l affdex-native -l boost_program_options `pkg-config opencv --cflags --libs`

Ошибка указывает на строку кода ниже:

shared_ptr<PlottingImageListener> listenPtr(new PlottingImageListener(csvFileStream, draw_display));

И ошибка получения:

/tmp/ccWtKCG0.o: In function `PlottingImageListener::PlottingImageListener(std::basic_ofstream<char, std::char_traits<char> >&, bool)':
video_analyse.cpp:(.text._ZN21PlottingImageListenerC2ERSt14basic_ofstreamIcSt11char_traitsIcEEb[_ZN21PlottingImageListenerC5ERSt14basic_ofstreamIcSt11char_traitsIcEEb]+0x148): undefined reference to `Visualizer::Visualizer()'
collect2: error: ld returned 1 exit status

Точно такая же ошибкатакже получен с gcc 5.5.0.

Если я прокомментирую все, начиная с этой строки кода, то компиляция произойдет успешно.

Пожалуйста, объясните мне это.Либо о том, как установить точную версию gcc 5.4.1, как того требует зависимость SDK, ИЛИ что-нибудь, чего мне не хватает.

...