4

지금 PreMake/CMake를보고 있습니다. 그러나 전체 플랫폼 간 빌드 워크 플로에서이 방법을 사용하는 방법을 알지 못합니다. 실제로 makefile (또는 솔루션)을 생성합니다. 그렇다면 실제로 각 대상 플랫폼에서 이러한 솔루션을 어떻게 구축합니까? .sh 또는 .bat 파일과 같은 대상마다 하나의 빌드 스크립트를 유지해야합니까? 이것은 처음부터 premake/CMake와 같은 도구를 사용하는 목적을 무효화합니다.PreMake/CMake를 C++ 빌드 워크 플로우에 통합하는 방법

premake를 사용하여 코딩에서 최종 내장 제품까지의 모든 과정을 보여주는 자습서에 대한 링크가 좋습니다.

도움 주셔서 감사합니다.

+0

나는이 질문을 이해하고 있는지 잘 모르겠다. Premake는 빌드 파일을 생성합니다. 당신은 건물 *에 의해 그들을 건설합니다. makefile을 생성했다면 makefile을 실행한다. VC'.sln'을 생성했다면 VC에서 VC를 실행합니다. Premake의 핵심은 * 사용자 *가 자신이 편안하게 사용할 수있는 빌드 파일을 사용할 수 있다는 것입니다. VC proj를 사용할 수 있으며 사용자는 makefile이나 Code :: Blocks 등을 사용할 수 있습니다. –

+0

premake (또는 CMake)는 프로젝트 파일 (또는 메이크 파일)을 생성합니다. 문제는 플랫폼 독립적 인 방식으로 파일을 빌드하는 방법을 아는 것입니다. 개미 그냥 그렇게 할 것 ... – Korchkidu

답변

5

주요 개발은 C++에서도 수행됩니다. 우리는 CMake + ANT를 사용합니다. Windows의 VisualStudio, Mac 및 iOS의 XCode. 일부 빌드 도구는 Python으로 작성됩니다.

다소 원활하게 작동합니다. 유닛과 저레벨 컴포넌트 테스트는 빌드에서 직접 실행됩니다 (CMake의 CTest 메커니즘을 사용하여 약간 수정했습니다 - CMake는 오픈 소스 임). 더 높은 수준의 구성 요소 및 시스템 테스트는 C#으로 작성된 맞춤형 프레임 워크를 통해 실행됩니다 (우리는 기성품을 사용할지 또는 자체적으로 작성할지에 대한 큰 논란이있었습니다. 결국에는 기성 프레임 워크 우리는 처음부터 우리 자신을 쓰는 것이 가치가 있었을 정도로 많이 수정해야했을 것입니다, 나는 그것이 올바른 결정인지 여전히 궁금합니다.)

우리는 ANT와 함께 일을 묶어 - 주로 낮은 수준에서 < 간부 > 호출을 사용뿐만 아니라 (예 : FTP 및 SVN 을) 잘 확립 된 확장 기능을 활용. CI는 Jenkins에서 실행되며 ANT를 통해 하위 빌드 레이어에 연결됩니다.

+0

고마워. 나는 C++로 프로그래밍하고있다. 나는 그 질문을 편집했다. 또한 전체 워크 플로가 필요합니다. Visual Studio 솔루션을 닫은 다음 premake를 시작한 다음 솔루션을 다시 열어야한다고 들었습니다. 그래서 premake를 사용하는 사람들에 대해 듣고 싶습니다. 매일 premake를 사용하는 방법에 대해 듣고 싶습니다. – Korchkidu

+1

우리의 주요 개발 또한 C++로 이루어졌습니다. 우리는 CMake + ANT (주로)를 사용합니다. Windows의 VisualStudio, Mac 및 iOS의 XCode. 그것은 매끄럽게 작동합니다. 제 생각에는 '튜토리얼'이 너무 많이 묻는 것입니다 - 특정 질문을하면 더 많은 마일리지를 얻을 수 있습니다. –

+0

CMake + Ant를 어떻게 통합합니까? 다음과 같은 것을 사용하십니까? http : //code.google.com/p/cmakeant/? – Korchkidu