web-dev-qa-db-ja.com

CLionでOpenCvを使用する

エレメンタリーOS(Ubuntuベース)でOpenCVLibを使おうとしています。

私はこのチュートリアルに従いました:

https://www.youtube.com/watch?v=i1K9rXiei9I

この行をCmakeList.txtに追加しました:

find_package(OpenCV REQUIRED)

include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(myOpenCVTest ${OpenCV_LIBS})

しかし、プロジェクトをビルドすると、次のようなエラーで失敗します。

/usr/bin/ld: cannot find -lopencv_core
...

誰かが私を助けることができますか?

10
johni07

私は問題を解決しました。

まず、古いOpenCVファイルとインストールをすべて削除しました。

その後、私はこれに従って guide OpenCVと必要なすべてのパッケージをインストールしました。

そして今、すべてがこのCmakeList.txtで機能しています:

cmake_minimum_required(VERSION 2.8.4)
project(OpenCVTest)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

find_package( OpenCV REQUIRED )
set(SOURCE_FILES main.cpp)
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries( ${PROJECT_NAME} ${OpenCV_LIBS} )
17
johni07

(コメントセクションのチャットに続いて)

インストールにどのビデオを使用したかはわかりませんが、cmakeベースのインストールを使用したと仮定すると、通常はmakeを実行し、続いて_Sudo make install_を実行してすべてを正しい場所にコピーします

または、CMakeLists.txtにlink_directories(home/Projects/opencv/opencv-3/build/lib/)include_directories((home/Projects/opencv/opencv-3/include/)を追加することもできます

0
Rosa Gronchi

CmakeファイルでOpenCV_FOUND 1を強制的に宣言する必要がありました。ファイル全体は次のようになります:

cmake_minimum_required(VERSION 3.3)
project(testing)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(OpenCV_FOUND 1)
find_package( OpenCV REQUIRED )

set(SOURCE_FILES main.cpp)

add_executable(testing ${SOURCE_FILES})

target_link_libraries(testing ${OpenCV_LIBS})
0
ZdaR