2015-01-18 5 views
0

Eclipse CDT 용 CMake 기반 프로젝트를 생성하고 Eclipse로 가져 오려합니다.Eclipse 용 생성 후 CMake 프로젝트 관리

이제 새 소스/헤더 파일을 추가 할 때마다 새 파일이 추가되었다는 CMakeLists.txt를 어떻게 말합니까?
A. 매번 CMakeLists.txt에 수동으로 항목을 추가하여 최신 상태로 유지해야합니까?

B.이 작업을 자동으로 수행 할 수있는 플러그인이 있습니까?

C.이 작업을 자주 수행하지 않아도 되겠지만 다른 팀원과 프로젝트를 공유해야 할 때가끔합니까? 모범 사례에 나를 가리키는 사람에게

감사합니다 ...

답변

0

CMakeLists.txt 구성 정보의 주요 원천입니다. 생성 된 프로젝트 파일 수정 (IDE/편집기가 무엇이든간에)에는 의미가 없습니다. VCS에 넣지 않아도됩니다. 인공물을으로 간주하십시오. 필자는 이클립스를 사용한 적이 없지만 수정 후 CMakeLists.txt으로 프로젝트를 다시 생성해야한다고 가정하면 이클립스가 다시로드하고 빌드를 계속해야합니다.

또한 일부 플러그인 또는 IDE 자체가 내 CMakeLists.txt을 자동으로 수정한다는 생각을 좋아하지 않습니다. 해당 작업의 구현 복잡성을 제외하고 IDE가 IDE의 무언가를 깨뜨릴 가능성이 큽니다. 나에 관해서는 수동으로 수정하는 것이 항상 더 낫다.

0

A.이 업데이트를 유지할 때마다 CMakeLists.txt에 수동으로 항목을 추가해야합니까?

한 가지 방법은 소스 파일 지정 globbing을 사용하는 것입니다

새로운 소스를 지정할 필요가 없습니다 의미
file(GLOB_RECURSE MY_SRCS src/*.cpp) 

때마다 파일을; 대신이 폴더의 모든 파일이 프로젝트의 일부라고 말합니다.

B.이 작업을 자동으로 수행 할 수있는 플러그인이 있습니까?

나는 잘 모르겠다. @ zaufi가 말한 것처럼 CMakelists.txt 파일을 자동으로 유지 관리해야하므로 지저분한 문제처럼 보입니다. 그러나 파일의 유지 관리를 쉽게해야하는 일부 Eclipse plugins이 있습니다. CMakeEd는 구문 강조를 제공하며, CMakeBuilder는 다양한 CMake 옵션을 설정하는 GUI를 제공합니다.

C.이 작업을 자주 수행하지 않겠지 만 프로젝트를 다른 팀 구성원과 공유해야 할 때가끔 있습니까?

다시 말하지만, Globbing을 사용하면 폴더의 파일을 삭제하고 CMake를 다시 실행할 수 있습니다. 새로운 파일이 eclipse에서 자동으로 나타나야하므로 -G 옵션을 다시 지정할 필요가 없습니다. @ zaufi와 마찬가지로 일반적으로 .project 및 .cproject 파일을 팀 구성원과 공유 할 필요가 없습니다. 대신 CMake에서 자체적으로 생성 할 수 있습니다.

관련 문제