Почему pkg-config —libs opencv возвращает расположение библиотек, а не сами библиотеки?

Я пытаюсь скомпилировать программу на C ++, которая включает OpenCV. Я хочу использовать pkg-config, чтобы упростить компиляцию. Однако это не работает из-за того, что pkg-config -libs opencv возвращает местоположения библиотеки, а не сами библиотеки. Я получил:

/usr/local/lib/libopencv_calib3d.so /usr/local/lib/libopencv_contrib.so
/usr/local/lib/libopencv_core.so /usr/local/lib/libopencv_features2d.so
/usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so
...

Пока я ожидаю что-то вроде

-L/usr/local/include/ -lopencv_contrib -lopencv_features2d ...

Я что-то напортачил? Если нет, то почему это произошло? И можно ли это исправить?

0

Решение

Вывод pkg-config правильный.

Компоновщик GNU (ld) (я не знаю, другие тоже) позволяет вам писать библиотеки с полным путем, без -L или -l, в дополнение к обычным опциям -L и -l.

Ошибка должна быть в каком-то другом месте.

0

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

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

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