2016-10-25 2 views
1

Я настраиваю opencv 2.4.10 в NVidia/Cuda:7.5-cudnn4-devel-centos7 Докер-контейнер. Запуск make install работает почти до конца, то я получаю эту ошибку:Ссылка на проблему В opencv_createsamples

[ 99%] Built target opencv_haartraining_engine 
Linking CXX executable ../../bin/opencv_createsamples 
CMakeFiles/opencv_createsamples.dir/createsamples.cpp.o: In function `main': 
createsamples.cpp:(.text.startup.main+0x2cb): undefined reference to `JpgDatasetGenerator::JpgDatasetGenerator(char const*)' 
createsamples.cpp:(.text.startup.main+0x31f): undefined reference to `DatasetGenerator::create(char const*, int, int, char const*, int, int, int, double, double, double, bool, int, int)' 
createsamples.cpp:(.text.startup.main+0x773): undefined reference to `PngDatasetGenerator::PngDatasetGenerator(char const*)' 
createsamples.cpp:(.text.startup.main+0x7af): undefined reference to `cvCreateTrainingSamplesFromInfo(char const*, char const*, int, int, int, int)' 
createsamples.cpp:(.text.startup.main+0x814): undefined reference to `cvCreateTrainingSamples(char const*, char const*, int, int, char const*, int, int, int, double, double, double, bool, int, int)' 
createsamples.cpp:(.text.startup.main+0x857): undefined reference to `cvShowVecSamples(char const*, int, int, double)' 
collect2: error: ld returned 1 exit status 
make[2]: *** [bin/opencv_createsamples] Error 1 
make[1]: *** [apps/haartraining/CMakeFiles/opencv_createsamples.dir/all] Error 2 
make: *** [all] Error 2 

Я могу получить OpenCV 2.4.10 работать с CUDA 7.0 в CentOS 6, но этот вопрос появится в CentOS 7 с CUDA 7.5.

+0

Некоторые функции определены здесь - https://github.com/opencv/opencv/blob/2.4/apps/haartraining/cvhaartraining.cpp - на основе указанной здесь конфигурации - https://github.com/opencv/opencv/blob/2.4/apps/ haartraining/CMakeLists.txt # L58 - это не должно быть проблемой - ca n вы делитесь другими журналами с созданием приложения haartraining? Альтернативно для продолжения вы можете отключить здание, если вы его не используете. – sanchitarora

ответ

0

Я до сих пор не знаю, почему этот шаг был необходим здесь, а не в моей установке CentOS 6/CUDA 7.0; Я также считаю, что удивительно, что это исправление не нужно было до сих пор в make install процесс, но решение было просто

make clean

затем

make install

Смежные вопросы