QT5で開発するためにUbuntu 16.04にOpenCV3.1をインストールしようとしています。残念ながら、未定義の参照(以下を参照)のために、ソースからのビルドは常にエラーになります。Ubuntu 16.04でOpenCV 3.1をビルドできない(未定義の参照)
私は次のように使用:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_FFMPEG=ON -D WITH_OPENGL=ON -D BUILD_TIFF=ON -D WITH_VTK=ON..
、それが正常に動作します。しかし、それを構築すると常にこのエラーが発生します。
../../lib/libopencv_viz.so.3.1.0: undefined reference to `vtkSTLReader::New()'
../../lib/libopencv_viz.so.3.1.0: undefined reference to `vtkOBJReader::New()'
collect2: error: ld returned 1 exit status
modules/viz/CMakeFiles/opencv_test_viz.dir/build.make:232: recipe for target 'bin/opencv_test_viz' failed
make[2]: *** [bin/opencv_test_viz] Error 1
CMakeFiles/Makefile2:3358: recipe for target 'modules/viz/CMakeFiles/opencv_test_viz.dir/all' failed
make[1]: *** [modules/viz/CMakeFiles/opencv_test_viz.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
もちろん私はグーグルで見つけたすべてを試しました。いくつかの異なるcmakeフラグを試してみましたが、libvtk5-devを再インストールしようとしましたが、libvtk6-devを試してみました。また、sourceからvtk7.1をビルドしました。
私も
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_FFMPEG=ON -D WITH_OPENGL=ON -D BUILD_TIFF=ON -D WITH_VTK=ON -D BUILD_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/home/user/opencv/opencv-3.1.0/opencv_contrib/modules ..
経由opencv_contribを追加しようとしたしかし、それはすでに次のエラー
CMake Error at opencv_contrib/modules/text/CMakeLists.txt:22 (ocv_add_testdata): `Unknown CMake command "ocv_add_testdata".
またhereとhereを列挙されているすべてのパッケージを更新/ Iアップグレードなかったことに注意してくださいを作成
だから、基本的に2日間ランダムに私がGoogleで見つけることのできるすべての解決策を試した後、私は今ここで尋ねています。 うまくいけば、誰かがこれを修正する方法を知っていて、ありがとう!
編集:私はOpenCV3.1でこれらの問題が発生します。私は働いているOpenCVを持っている2.4.13
あなたが投稿したパッケージのリンクには表示されないVTKの問題があるようです。 '-D WITH_VTK = OFF'でビルドするか、vtk?をインストールできますか? PSが 'QT'と' VTK'を同時にコンパイルすると、複雑になるかもしれません:http://answers.opencv.org/question/61773/vtk-support-disabled-due-to-incompatible-opencvvtkqt-combination/ – iamai