OpenCV 라이브러리를 사용하여 C++ 응용 프로그램을 작성하려고합니다. OpenCV 메인테이너들의 권고에 따라, 저는 Makefile을 생성하기 위해 CMake를 사용하고 있습니다. 내 플랫폼은 Windows 7 (64 비트)입니다. 내 컴파일러는 MinGW입니다 (응용 프로그램을 빌드 할 때 'mingw32-make'도구를 사용하고 있습니다).OpenCV 라이브러리 dll과 CMake 포함
지금 당장은 코드가 제대로 작동 할 수 있도록 설정이 올바른지 확인하려고합니다. OpenCV 라이브러리가 올바르게 구축되었는지 확인했습니다. 그런 다음 CMake를 사용하여 OpenCV 라이브러리를 내 빌드에 포함시킬 수 있는지 확인하려고했습니다.
DisplayImage.cpp
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main(int argc, char** argv)
{
Mat image;
image = imread(argv[1], 1);
if (argc != 2 || !image.data)
{
printf("No image data \n");
return -1;
}
namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
imshow("Display Image", image);
waitKey(0);
return 0;
}
나는 Makefile을 생성하기 위해 cmake-GUI를 사용
cmake_minimum_required(VERSION 2.8)
project(DisplayImage)
find_package(OpenCV REQUIRED)
add_executable(DisplayImage DisplayImage)
target_link_libraries(DisplayImage ${OpenCV_LIBS})
CMakeLists.txt 다음 사용 mingw32- : 나는 OpenCV의 튜토리얼에서 다음 예제 코드를 사용하고 make를 사용하여 애플리케이션을 빌드하십시오. 모든 것이 잘 작동하고 오류없이 프로그램이 컴파일됩니다. 그러나, 그것을 실행하려고하면 Windows가 멈추고 libopencv_core231.dll이 필요하다고 불평합니다. 내가 확인한이 DLL은 내 (OpenCV Build location)/bin 디렉토리에있다. 컴파일시 CMake/MinGW에 이것을 포함 시키려면 어떻게해야합니까?
CMake가 모든 실행 폴더에 복사 할 필요가 없도록 dll이 포함 된 디렉토리를 포함하지 않습니까? – astay13
그것은 CMakes의 문제가 아닙니다. 운영 체제가 필요한 dll 파일을 검색하고 있습니다. – neagoegab
예,하지만 실행 파일에 어디에서 찾을 수 있는지 알려주지는 않았습니까? – astay13