2011-09-06 3 views
0

우리는 이미 문제가 해결되었다고 확신합니다. University의 연구팀은 Visual Studio 2010을 사용하여 소프트웨어를 개발하고 있습니다. 우리가 개발하는 소프트웨어는 각기 다른 컴퓨터에서 자체 경로에 자체 라이브러리가있는 다양한 오픈 소스 도구를 기반으로합니다.팀으로 일하면서 Visual Studio 프로젝트를 동기화하는 방법은 무엇입니까?

오픈 소스 패키지는 CMake로 컴파일됩니다. 우리는 개별적으로 설치하여 소프트웨어를 개발하기 시작했습니다. 그러나 문제는 개별적으로 작성된 코드가 경로 설정의 차이로 인해 서로의 컴퓨터에서 작동하지 않는다는 것입니다. 코드에 대한 일반적인 기능을 어떻게 제공 할 수 있습니까? 우리도 CMake를 사용해야할까요? 우리는 수은을 사용하고 있습니다. 저장소로 프로젝트 파일을 커밋하고 헤더 또는 소스 파일 만 커밋하지 않아야합니까? 나중에 우리가 변경을 할 때마다 CMake에 의해 설정 될 소스에 수정을해야합니까?

감사합니다.

+1

잘 모르겠지만 CMake가 VS 프로젝트 파일을 만들 수 없습니까? 그런 다음 CMakeLists.txt 파일을 커밋하고 수시로 프로젝트 파일을 만드는 것이 가장 좋습니다. – arne

+0

네,하지만 모든 새로운 단계에서 처음부터 다시 빌드하는 것은 약간 번거로운 것 같습니다. 맞습니까? –

+1

좋아요, 그럼 실제로 얼마나 자주 라이브러리 나 파일을 프로젝트에 추가하나요? 그것은 새로운 프로젝트 파일이 필요한 유일한 시간이어야합니다. – arne

답변

2

Visual Studio 프로젝트 파일을 생성하려면 CMake를 사용해야합니다. 원본, 헤더 및 CMakeLists.txt 만 커밋하십시오.

별도의 빌드 경로로 작업하십시오. 예를 들어, 프로젝트 구조는

Project\Src 
Project\Doc 
Project\...... 

Project\build 

같은 빌드 폴더를 만들고이 폴더에 VS-솔루션 및 프로젝트 파일을 생성 같은 경우. CMake는 (희망적으로 :) 모든 라이브러리를 찾고 VS에 대한 올바른 포함 및 라이브러리 경로를 설정합니다. VS 프로젝트 파일은 새 소스 파일이 프로젝트에 추가 된 경우에만 생성됩니다. CMake는 이것을 자동으로 감지하고 프로젝트 파일을 다시 생성 할 것인지 묻습니다.

이것은 우리가 일하는 방식이며 우리는 정말 잘하고 있습니다. :)

+0

감사합니다. fdlm. 우리는 또한이 비슷한 접근 방식을 생각했지만 누군가 실제로 그것을 사용하고 있는지를 알고 싶었습니다. –

1

모든 컴퓨터에서 모든 라이브러리 경로를 설정해야합니다. 라이브러리가있는 위치에 관계없이 어딘가에 있고 컴파일러에서 찾을 수있는 한 모든 라이브러리 경로를 설정해야합니다. 오히려 절대 경로보다 프로젝트 설정에서 (Alt+F7을) :

+0

그것은 단지 라이브러리가 아니며 종속성도 포함합니다. 그리고 Visual Studio에서는 프로젝트 파일에 의존합니다. 프로젝트 파일을 변경하면 전체 종속성이 수정됩니다. –

1

당신은 상대 경로 (..\..\Include 또는 ..\..\Libs 예)를 사용한다 (예 : C:\Include 또는 D:\Libs 등)

는 또한 자신 사이에 공통의 폴더 구조를 동의하여 프로젝트 파일.

관련 문제