?SCons - A Software Construction Tool
--
김도집 2005-11-02 09:50:50
1 SCons #
Python 스크립트를 이용하는 소프트웨어 빌드를 위한 도구이다. 이는 make를 완전 대체한다.
개인의 취향에 따라 다르겠지만 나 개인적인 사용 소감은 make 보다 더 사용이 편리한 듯 싶다.
1.1.1 간단한 C/C++ 실행파일 빌드 #
hello.c라는 파일명으로 다음 소스 코드를 작성한다.
int main(void)
{
printf("hello world\n");
return 0;
}
SConstruct라는 파일명으로 다음 내용을 작성한다.
Program('hello.c')
이제 쉘에서
scons를 실행하면 다음과 같은 결과 메시지가 출력될 것이다.
greendrm@devil:~/imsi/scons/simple_ex_01$ scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
gcc -c -o hello.o hello.c
gcc -o hello hello.o
scons: done building targets.
아주 간단하게
hello라는 실행파일을 빌드 하는데 성공했다.
1.1.2 간단한 오브젝트 빌드 #
SConstruct 파일 내용에 Program 대신 Object를 사용한다.
1.1.4 Verbose를 적게... #
scons -Q를 실행한다.
- SConstruct 는 Python 스크립트이다.
- scons는 순차적으로 실행되지 않는다.
1.2 Construction Environments #
빌드 시 사용할 환경 값을 변경할 수 있다.
SConstruct 파일의 내용이다.
env = Environment(CC = 'gcc',
CCFLAGS = '-O2 -g')
env.Program('hello.c')
다음은 실행 결과이다.
greendrm@devil:~/imsi/scons/scons_env_ex_01$ scons -Q
gcc -O2 -g -c -o hello.o hello.c
gcc -o hello hello.o
주의할 점은 make에서 사용하는 CFLAGS가 아니라 '''
CCFLAGS'''이다.