XXX
다른 프레임 워크에 의존 하는 프로젝트 가 YYY
있습니다. 프레임 워크는 YYYConfig.cmake
. 프로젝트를 구성 할 때 변수 cmake-gui
위에 프레임 워크를 추가합니다 YYY_DIR
. 솔루션을 생성하고 구축합니다. 이제 실행할 때 from을 로드 할 수 없다는 XXX.exe
오류가 발생합니다 . 내가 옳다 경우 라이브러리와 헤더 파일이 발견된다..dll
YYY
.lib
온라인에서이 파일이 .dll
있는 동일한 폴더에 넣어야 하는 것을 보았습니다 .exe
. 그러나 .dll
설치 폴더에 이미 있는를 왜 사용할 수 YYY
없습니까? 그리고 .dll
내 프로젝트에 필요한 모든 것을 올바른 폴더 에 자동으로 넣는 방법이 있습니까?
배포에 대한 기본적인 지식이 부족하다는 느낌이 들기 때문에 도움이되는 참조 나 링크에 감사드립니다. 감사.
추가 정보
나는 프레임 워크, 즉 구축 한 AliceVision 사용 vcpkg
, cmake-gui
및 Visual Studio 2019 다음과 같은 폴더가 포함되어있는 설치 프레임 워크의 폴더를 :
bin
많은 사람들 .exe
과.dll
share
어디에 AliceVisionConfig.cmake
있는include
많은 .hpp
프레임 워크 및 기타 종속성lib
많은 .lib
이제 간단한 테스트 프로젝트를 만들려고합니다. main.cpp
#include <iostream>
#include <aliceVision/system/cpu.hpp>
int main()
{
std::cout << "Total cpus " << aliceVision::system::get_total_cpus() << std::endl;
return EXIT_SUCCESS;
}
그리고 CMakeLists.txt
cmake_minimum_required(VERSION 3.3)
project(AliceVisionAs3rdParty)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(AliceVision CONFIG REQUIRED)
message(STATUS "Found AliceVision : ${AliceVision_FOUND}")
message(STATUS "Found AliceVision version: ${AliceVision_VERSION}")
add_executable(testAV3rd main.cpp)
target_link_libraries(testAV3rd PUBLIC aliceVision_system)
cmake-gui
내 테스트 프로젝트의 폴더에서 구성 할 때 AliceVision_DIR
폴더 AliceVisionConfig.cmake
가있는 위치 를 가리키는 변수 를 사용하고 있습니다. vcpkg
일부 종속성을 위해 프레임 워크에 필요한 도구 모음에 사용 하고 있습니다. 그런 다음 솔루션을 생성하고 구축합니다. 여기에서을 (를) 찾을 수 없다는 .exe
메시지를 받고 시작하는 지점 aliceVision_system.dll
입니다. 그것은에 존재하는 bin
프레임 워크의 폴더로 aliceVision_system.lib
에서 lib
폴더. 나는를 확인했습니다 .exe
와 종속성 그래,이입니다 .dll
찾을 수없는 것을. 모든 Windows 항목 .dll
이 발견되었습니다 ...
cmake 라이브러리를 제공해야합니다.
add_library(aliceVision_system SHARED IMPORTED)
이 사전 컴파일 된 라이브러리의 경로를 모르는 경우 evtl. 을 정의해야합니다 link_directories(path_to_your_library)
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다