Ссылка на OpenCV под MacOSX - PullRequest
1 голос
/ 18 мая 2011

Я пытаюсь скомпилировать код C ++ / OpenCV в MacOS X Snow Leopard, который изначально был под Linux. Я установил OpenCV 2.2 с помощью MacPorts, но больше не могу использовать что-то подобное:

g++ -o Localization Localization.o DataReader.o Kalman.o -libopencv_core -libopencv_highgui -L/usr/local/lib/

Я получаю эту ошибку:

ld: library not found for -libopencv_core
collect2: ld returned 1 exit status
make: *** [Localization] Error 1

Я пробовал другие варианты; как -lcv, -lhighgui, который я изначально использовал, но я не уверен, что здесь использовать.

Ответы [ 2 ]

3 голосов
/ 18 мая 2011

Если вы используете macports, вы используете неправильные пути. Это должно быть -L/opt/local/lib, а не /usr/local. Кроме того, чтобы упростить процесс, вы должны просто использовать pkg-config:

g++ -o Localization Localization.o DataReader.o Kalman.o $(pkg-config --libs opencv)

(что предполагает, что у вас есть /opt/local/bin в вашем PATH). Таким образом, вы можете использовать одну и ту же строку для Linux и OS X.

2 голосов
/ 18 мая 2011

Флаг ссылки должен быть -lopencv_core, а не -libopencv_core.Последний будет искать файл с именем libibopencv_core.{dylib,a} вместо libopencv_core.{dylib,a}.То же самое для opencv_highgui.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...