質問: win10,言語はC++です。Visual Studio2017、opencv3.2.0を使用しています。cmake3.8.0を使いopencv_contrib3.2.0の追加モジュールをビルドしたいです。 cmake-guiでCUDAなどのものははずしています。 opencv_contribを含めてビルドをするために、「OPENCV_EXTRA_MODULES_PATH」にダウンロードしたopencv_contribのmodulesファイルの指定も行いました。 Configureはエラーが出ずにできましたが、Generateの際に以下のエラーメッセージが表示されます。 ### 発生している問題・エラーメッセージ CMake Error at C:/opencv/sources/cmake/OpenCVUtils.cmake:911 (add_library): Cannot find source file: C:/opencv/build/modules/xfeatures2d/opencv_xfeatures2d_pch.cpp Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp .hxx .in .txx Call Stack (most recent call first): C:/opencv/sources/cmake/OpenCVModule.cmake:784 (ocv_add_library) C:/opencv/sources/cmake/OpenCVModule.cmake:729 (_ocv_create_module) C:/opencv/sources/cmake/OpenCVModule.cmake:940 (ocv_create_module) C:/opencv_contrib-3.2.0/modules/xfeatures2d/CMakeLists.txt:2 (ocv_define_module) CMake Error: CMake can not determine linker language for target: opencv_xfeatures2d CMake Error in C:/opencv_contrib-3.2.0/modules/xfeatures2d/CMakeLists.txt: Exporting the target "opencv_xfeatures2d" is not allowed since its linker language cannot be determined CMake Error: CMake can not determine linker language for target: opencv_xfeatures2d CMake Error in C:/opencv_contrib-3.2.0/modules/xfeatures2d/CMakeLists.txt: Exporting the target "opencv_xfeatures2d" is not allowed since its linker language cannot be determined ### 試したこと エクスプローラーを確認して、C:/opencv/sources/cmake/OpenCVUtils.cmakeは存在しているのですが、Generateの際に読み込みができていないようです。 追記 https://stackoverflow.com/questions/43772663/error-in-using-cmake-to-build-opencv3-2 このサイトに書いてある通りに動作しましたができませんでした。
回答: 古いバージョンは時々正しくやってもうまくいかないことがあるので、一番新しいvisual studio2019やOPENCV、Cmakeをダウンロードしてもう一度やってみてはどうでしょうか。 念のためにこちらを貼っておきます。 https://qiita.com/tomochiii/items/fa26404ebc5fcd4481b9 バージョンは古いので新しいもので試してみることをお勧めします。