OpenCV && S2i Harpia в Ubuntu 11.10 - PullRequest
       26

OpenCV && S2i Harpia в Ubuntu 11.10

2 голосов
/ 26 октября 2011

Я создал новый вопрос, потому что у меня по существу та же проблема, что и у этого , но я попытался скомпилировать пример C (не C ++), автоматически сгенерированный с помощью S2i Harpia, с помощью этой команды:

gcc test.c `pkg-config --libs --cflags opencv` -o test

Компиляция не удалась из-за этой проблемы , поэтому компиляция завершится успешно, если я переименую исходный файл с расширением ".mm". Тем не менее, я установил все с нуля (я начинаю новый проект), и он не работает с самого начала; вместо этого я хотел бы работать с обычными файлами ".c".

Код, который я пишу, написан на C - не на Objective-C и не на C ++ - как я могу сказать компилятору использовать «старый» интерфейс OpenCV C?

РЕДАКТИРОВАТЬ: нет проблем с новейшей Ubuntu 12.04.

Ответы [ 3 ]

0 голосов
/ 26 декабря 2011

Я попытался использовать Harpia и скомпилировать исходный код, сгенерированный автоматически.У меня такая же проблема.Мне удалось заменить gcc на g++:

g++ pkg-config --cflags opencv test.c -o test pkg-config --libs opencv

Из этого примера я понимаю, что gcc предназначен только для кода C, а g++ - для кода C++.

0 голосов
/ 06 марта 2012

Вы должны поместить библиотеки в конец строки.

gcc test.c `pkg-config --cflags opencv` -o test `pkg-config opencv --libs`

У меня ушло три дня на установку и переустановку opencv и зависимостей, пока я не обнаружил, что проблема с gcc. Каким-то образом порядок, в котором вы пишете вещи в аргументах команды, теперь важен.

РЕДАКТИРОВАТЬ: проблема не со старым интерфейсом или нет. Компилятор просто не связывается должным образом.

0 голосов
/ 05 декабря 2011

Используйте следующую команду, у меня это сработало:

gcc `pkg-config --cflags opencv` opencv.c -o open_cv `pkg-config --libs opencv`
...