2016-04-14 15 views
0

私はこの問題に関して多くの重複が想定されていますが、私の答えがどれもうまくいかなかったので別の質問をしたいと思います。OpenCV 3.1.0はCMakeでコンパイルされません

CMakeのでコンパイルされませんマイプロジェクト

見つかりパッケージ構成ファイル:/usr/share/OpenCV/OpenCVConfig.cmakeそれはそう「OpenCVのを」パッケージFALSEにOpenCV_FOUNDを設定はしないと考えられています見つけた。次のように

マイCMakeLists.txtである:

cmake_minimum_required(VERSION 2.8) 
project(Tests) 
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 

if(WIN32) 
# set(CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH} C:\\OpenCV") 
    set(OpenCV_DIR "C:\\OpenCV\\build") 
elseif(UNIX) 
    set(OpenCV_DIR "/usr/share/OpenCV") 
    set(PKG_CONFIG_PATH "/usr/lib/pkgconfig") 
endif() 

find_package(OpenCV REQUIRED) 
if(OpenCV_FOUND) 
    message("Found OpenCV") 
    message("Includes: " ${OpenCV_INCLUDE_DIRS}) 
else() 
    message("OpenCV not found, woot") 
endif(OpenCV_FOUND) 

add_executable(Test ShapeRecognition/prog.cpp) 
target_link_libraries(Test ${OpenCV_LIBS}) 

エラーは、ラインfind_package(OpenCVのREQUIRED)で発生し、従って以下のメッセージのいずれも、とにかく表示されません。

が、コマンドで、コンソールにコンパイル中:

g++ -o prog -std=c++11 `pkg-config --libs --cflags opencv` prog.cpp 

コンパイルは問題なく発生し、プログラムは完全に罰金起動することができます。

コマンド "のpkg-config設定--libs OpenCVの"(私は同意し、ビット長)私を与える:

-lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn -lopencv_dpm -lopencv_fuzzy -lopencv_line_descriptor -lopencv_optflow -lopencv_plot -lopencv_reg -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_rgbd -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_face -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xobjdetect -lopencv_objdetect -lopencv_ml -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv _imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core

コマンド "のpkg-config設定--cflags OpenCVの" 単に(CMAKE_INSTALL_PREFIXが/ usrに設定されている)私を与える:

-Iは/ usr /含ん/ OpenCVの

誰かが解決策を持っていれば、私は喜んでそれを受け取ります。

答えて

3

私はそれを理解しました。あまりにも私はこれほど長い間、このことに固執してしまった。

私はCLionを使用していますので、解決方法は異なるかもしれませんが、キャッシュを削除してプロジェクトをリロードするだけです(私は個人的にツール> CMake>キャッシュを削除してプロジェクトをリロードします)。

コマンドラインが動作し、CMakeがそうでない場合、これはあなたがしなければならないことだと思います。

このような愚かなエラーを抱えている他の人を助けることができたらと思います。

関連する問題