Я пытаюсь включить библиотеку dlib в свой пользовательский модуль Kurento.
в src/server
каталог моего модуля я добавил следующее CMakeLists.txt
:
generate_code (
MODELS ${CMAKE_CURRENT_SOURCE_DIR}/interface
SERVER_STUB_DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/implementation/objects
MODULE_EXTRA_LIBRARIES /home/dave/dlib/dlib
)
И в моем файле реализации (src/server/implementation/objects/OpencvPluginSampleOpenCVImpl.cpp
) Я ссылаюсь на заголовки, которые мне нужны, вот так:
#include </home/dave/dlib/dlib/dnn.h>
#include </home/dave/dlib/dlib/data_io.h>
#include </home/dave/dlib/dlib/image_processing.h>
Я могу скомпилировать модуль успешно используя cmake .. -DCMAKE_INSTALL_PREFIX=/usr && make && sudo make install
в каталоге сборки моего модуля.
Однако, когда я запускаю медиа-сервер Kurento, журналы показывают следующее:
Module /usr/lib/x86_64-linux-gnu/kurento/modules/libkmsopencvpluginsamplemodule.so cannot be loaded: /usr/lib/x86_64-linux-gnu/libkmsopencvpluginsampleimpl.so.0: undefined symbol: USER_ERROR__missing_dlib_all_source_cpp_file__OR__inconsistent_use_of_DEBUG_or_ENABLE_ASSERTS_preprocessor_directives_
Где я тут ошибся? Какой лучший способ включить такую библиотеку?
Задача ещё не решена.
Других решений пока нет …