1
私はNVidia/Cuda:7.5-cudnn4-devel-centos7 Dockerコンテナにopencv 2.4.10を設定しています。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
私はCentOSの6にCUDA 7.0で動作するようにOpenCVの2.4.10を取得することができていますが、この問題は、CUDA 7.5とCentOSの7に表示されます:make install
を実行すると、私はこのエラーを取得し、ほとんど完成に動作します。
機能の一部
が定義されている
make clean
ましたここ - 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 - これは問題ではありません。あなたはhaartrainingアプリを構築することから他のログを共有しますか? また、あなたがそれを使用していない場合は、ビルドを無効にすることもできます。 – sanchitarora