나는 다음과 같은 구조의 프로젝트가 있습니다.CMake 외부 라이브러리를 찾는이
- 소스 코드 : E : 경로가 이런 식으로 설정/프로젝트 이름 마스터를
- 곳 바이너리를 빌드하려면 : E는 :/프로젝트 이름 마스터/소스 (1.Can 내가 다른 디렉토리를 선택하거나
다음으로 내가 선택한 항목 : 구성 -> "이 프로젝트의 생성기 지정 = Visual Studio 11, 기본 네이티브 컴파일러 사용"-이 파일을 포함하는 디렉토리로 설정해야합니다. > 마침
그런 다음 정보를 얻습니다 : 구성 프로세스의 오류, 프로젝트
이름 : CMAKE_INSTALL_PREFIX 값 C :/프로그램 파일 (x 86)/프로젝트 이름 이름 : SFML_INCLUDE_DIR 값 SFML_INCLUDE_DIR-NOTFOUND
파일이 잘못CMake 구이가 포함되어 다음과 같은 정보가 될 수 있습니다
CMake Error at thirdparty/FindSFML.cmake:165 (message):
Could NOT find SFML (missing: SFML_SYSTEM_LIBRARY SFML_WINDOW_LIBRARY
SFML_AUDIO_LIBRARY SFML_NETWORK_LIBRARY SFML_GRAPHICS_LIBRARY)
Call Stack (most recent call first):
CMakeLists.txt:63 (find_package)
SFML_INCLUDE_DIR (CMake Gui에서)을 설정했습니다. C : /OpenGL/SFML-2.1/include/SFML하지만 난 여전히 그 오류가 발생합니다. 2. 그것을 고치는 방법? lib 파일과 dll은 어떻게됩니까?
EDIT1 : 나는이 프로젝트에서 official site
FindSFML.cmake에서 SFML 다운로드 는 SFML_ROOT 항목을 포함하지 않지만, SFML_INCLUDE_DIR은 다음과 같습니다
# find the SFML include directory
find_path(SFML_INCLUDE_DIR SFML/Config.hpp
PATH_SUFFIXES include
PATHS
${SFMLDIR}
$ENV{SFMLDIR}
~/Library/Frameworks
/Library/Frameworks
/usr/local/
/usr/
/sw # Fink
/opt/local/ # DarwinPorts
/opt/csw/ # Blastwave
/opt/)
것은 어떻게 설정하려면 SFML_ROOT? 해당 파일에 항목 (레코드)을 추가해야합니까? 어떻게 생겼을까요?
Edit2가 : SFML (C : /OpenGL/SFML-2.1/)에 새로운 경로의 일부 FindSFML.cmake 모든
find_path(SFML_INCLUDE_DIR SFML/Config.hpp
PATH_SUFFIXES include
PATHS
${SFML_ROOT}
$ENV{SFML_ROOT}
C:/OpenGL/SFML-2.1/
~/Library/Frameworks
/Library/Frameworks
/usr/local/
/usr/
/sw # Fink
/opt/local/ # DarwinPorts
/opt/csw/ # Blastwave
/opt/)
Edit1을 참조하십시오. – Irbis
SFML-Edit2 경로가있는 새로운 FindSFML.cmake를 프로젝트 위치에 추가했습니다. 이게 네가 말하는거야 ? – Irbis
하지만 SFML_ROOT를 어떻게 그리고 어디에서 정의해야합니까? 나는 CMake-Gui를 사용합니다. – Irbis