2010-05-12 5 views
2

내가 현재 코딩 프로젝트의 느슨하게 관련 풍요의 뿔을 수용 몇 상자를 유지하고 더 제정신 뭔가 구성/확인 , 데이타베이스와 저장소 (homebrew * nix 배포판부터 나의 수업 노트까지), 나 자신과 몇 명의 똑같이 끈적 거리는 껍질 벗겨 낸 괴짜 친구들 (이 모든 풍요의 뿔은 SVN에 저장되어있다.)는에서 빌드 툴 체인을 다시 구현 찾고 bash는/그렙/SED/AWK/(자동) (예를 들어 boost.build 등)

우리 코드의 대부분은 gcc로 컴파일 된 C/C++/어셈블리에 있습니다 (일부 유틸리티는 python/perl/php에 있습니다. 우리는 큰 자바 팬이 아닙니다). 우리의 빌드 툴체인은 일반적으로 make, bash, grep, sed 및 awk의 hodgepodge로 구성됩니다. 최근에 Makefile을 발견 한 프로그램은 빌드하는 프로그램 (내 모든 숨겨진 sed와 awking으로 모든 사람의 일반적인 불안뿐만 아니라)이 덜 아픈 빌드 시스템을 찾도록 동기를 부여했습니다. 현재

, 내가 건너 온 한 가장 강력한 후보는 우리의 빌드 관련 bash는 스크립트에 대한 대체로서 GNU 만들에 대한 교체 및 파이썬으로 빌드/Bjam 부스트입니다. 살펴볼 가치가있는 다른 C/C++/asm 빌드 시스템이 있습니까? 나는 여러가지 대안을 찾아 보았지만 Boost 's 외에 다른 이름으로 개발 된 것들은 발견하지 못했습니다.

답변

1

당신을 (내가 svnversion 중요뿐만 아니라에 대해 구성 할 수있는 충분한 유연성 등 쉽게 svn의 명령 행 도구에서 정보를 추출 할 수있는 능력은 C/C++ 프로젝트로 쉽게 ASM 프로젝트 빌드 있음을 유의하십시오) 파이썬 기반의 빌드 시스템도 사용할 수 있습니다. - http://code.google.com/p/waf/

+0

감사합니다. 매우 시원합니다. – wash

2

우리는 최근 직장에서 CMake을 사용하기 시작했습니다. 나는 지금까지 그것으로 꽤 행복했습니다.

2

scons 또는 cmake.

"크로스 플랫폼"- Windows 및 Linux에서 모두 컴파일 할 수 있습니다.

이제 매우 인기가 있습니다 (예 : 부스트가 사용). Makefile (Linux 용), VC++ 프로젝트 (Visual Studio 용)를 사용자 정의 파일 (CMakeList.txt)에서 가져와 네이티브 빌드 파일을 만듭니다. 또한 Eclipse 프로젝트, KDevelop 프로젝트 등을 만들 수 있습니다. 네이티브 빌드 파일을 생성하기 때문에 사용중인 모든 기능을 계속 사용할 수 있습니다. 예를 들어 Makefile의 경우 ccache/colorgcc/distcc이고 Visual Studio의 경우 Visual Assist X입니다.

우리는 프로젝트를 사용하며 자동 종속성, 쉬운 구문, 견고한 빌드 등을 만족합니다.

Scons는 빌드 자체를 수행하는 Python Base 시스템입니다. IMHO는 덜 대중적이며 대규모 프로젝트의 경우 여전히 느립니다. 하지만 msmall에서 중간 프로젝트에 이르기까지 좋은 대안 일 수 있습니다.