Связывание библиотек с проектом QT с использованием вывода pkg-config

Это вопрос новичка. Я пытаюсь добавить библиотеки OpenCV в проект QT.

В этом вопросе говорится, что флаги ссылки задаются как

pkg-config --libs opencv

. Если я вставлю вывод командной строки в файл проекта, например:

LIBS += -L/usr/local/lib -lml -lcvaux -lhighgui -lcv -lcxcore

, то все компилируется. хорошо, но теперь это не портативно. Как я могу просто сослаться на вывод команды?

Обновление: Попробовал предложение Кена Блума, но оно не скомпилируется. Фактически сгенерированные команды компилятора:

# How it should be, at least on my machine
g++ -o QOpenCVTest main.o qopencvtest.o moc_qopencvtest.o -L/usr/lib -L/usr/local/lib -lml -lcvaux -lhighgui -lcv -lcxcore -lQtGui -lQtCore -lpthread

# with CONFIG and PKGCONFIG
g++ -o QOpenCVTest main.o qopencvtest.o moc_qopencvtest.o -L/usr/lib -lQtGui -lQtCore -lpthread

24
задан Community 23 May 2017 в 10:29
поделиться

2 ответа

Что-то вроде этого должно выполняться в вашем файле qmake

LIBS += `pkg-config --libs opencv`

Изменить: Хм, ответ Кена Блума может быть более переносимым, но не документирован?

4
ответ дан 28 November 2019 в 22:53
поделиться
CONFIG += link_pkgconfig
PKGCONFIG += opencv

(я получил этот ответ от http://beaufour.dk/blog/2008/02/using-pkgconfig.html )

36
ответ дан 28 November 2019 в 22:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: