문제

CMAKE BuildSystem을 사용하는 방법은 현재 사용 중 소스 파일을 스캔합니다. aux_source_directory, 동일한 디렉토리에서 헤더 파일을 스캔하고 바람직하게는 비슷한 명령을 사용합니까?

아직 문서 에서이 작업을 수행 할 수있는 쉬운 방법을 찾지 못했기 때문에 이제 (CodeBlocks) 프로젝트 파일을 게시 할 수있는 엉뚱한 Bash 스크립트가 있습니다.

도움이 되었습니까?

해결책

파일 (Glob ...) 명령을 사용할 수 있습니다. 예를 들어:

set(dir my_search_dir)
file (GLOB headers "${dir}/*.h")
message("My headers: " ${headers})

이 명령은 또한 재발하고 주어진 경로에 대한 파일을 나열 할 수 있습니다. 참조 "파일"명령 항목 CMAKE DOC에서.

다른 팁

aux_source_directory에 대한 문서는 그것이 그런 식으로 사용되지 않았 음을 시사합니다. 그래서 당신이 요구하는 것이 가능하다는 것을 의심하고 싶습니다. 권위있는 답변을 원한다면 cmake 개발자에게 cmake@cmake.org에 도달 할 수 있습니다 (실제로 다루기에 매우 좋습니다).

빌드에 포함 된 내용을 지정하기 위해 와일드 카드를 사용하는 것을 강력하게 권장합니다. 빌드 파일은 라이브러리의 정확한 내용을 지정해야하며 디렉토리에 존재하는 일에 의존해서는 안됩니다. 처음에는 번거로울 수 있습니다 (와일드 카드에 익숙하거나 IDE가 같은 방식으로 작동하는 경우). 그러나 익숙해지면 다른 방법을 원하지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top