'Build System'에 해당되는 글 1건

  1. 2009.03.05 [.NET] Build Tool 과 Build System
프로그램을 Cording 하고 배포하기위해서는 반드시 Build 라는 과정을 거쳐야만하고(Script 가 아니라면...) 우리는 거의 매일 Build 의 과정을 반복한다.
프로그래밍의 한 과정인 Build 를 하는데 사용되는 Tool 에는 여러가지 종류가 있다.
그중 몇가지 잘 알려진 Build Tool 에 대해서 알아보고 다음편에서는 Microsoft 사의 MSBuild 에 관해 정리해 보고자 한다.

Make 방식의 Build Tool
몇가지 Build Tool은 BSD(Berkeley Software Distribution) Make Tool의 확장판이라고 할 수 있다.
그중에 잘 알려진 것들이 보면 GNU Make, NMake, OPus Make, Jam, Cook, GBS, CMake 그리고 QMake 같은 Tool 들이 있다.
위의 Tool들의 설명은 추후 Update 하거나 추가로 덫붙이기로 하겠다.

Ant/NAnt
위에 나열한 Tool 의 경우는 모두 makefile 파일 같은 Build Description File 을 이용하며 대부분 사용하기에 애매한 명령어나 Build 하는 데 필요한 완전한 Programming Language를 사용한다.
이것들의 문제점을 든다고 하면 유지보수가 어렵다는데 있다.(뭐 익숙한 사람들에게는-그렇게 말하는 고수분들은-더할 나위없는 유지보수가 쉬운 방식일수도 있겠지만...)

Ant 는 자바진영에 잘 알려진 Cross-Platform Build Tool 이다.
이는 Build 를 하기위해 명령어를 사용하거나 Programming Language 를 사용하는 것을 버리고 XML-Base 의 Configuration File 을 사용한다.

Build 의 단계는 Java Language로 구현된 Task 라고 불리는 것으로 설명되어지며 이런 Task는 다시 Target에 의해서 Group 지어진다.

Ant File 의 예

<project>
  <target name="compile">
    <mkdir dir="build/classes"/>
      <javac srcdir="src" destdir="build/classes"/>
  </target>
  <target name="jar">
    <mkdir dir="build/jar"/>
    <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
      <manifest>
        <attribute name="Main-Class" value="sayed.HelloWorld"/>
      </manifest>
    </jar>
  </target>
  <target name="run">
    <java jar="build/jar/HelloWorld.jar" fork="true"/>
  </target>
</project>


Ant 를 사용해서 Build 를 하기 위해서는 프로그램의 Source Tree 상에 Build.xml 파일을 위치시카고 Command prompt 상에서 Ant 를 입력하고 실행시킨다.
Ant 는 Command-Line 으로 실행되지만 GUI 또한 제공된다.

다음편에서는 Microsoft의 MSBuild 에 관해 정리해 보기로 하겠다.












Posted by woojja
이전버튼 1 이전버튼

티스토리 툴바