티스토리 뷰

개발/GNU Build System

2장. configure 만들기

Jaeyeon Baek 2014.01.29 09:57


configure를 생성하기 위해서는 우선 autoscan을 활용해서 configure.ac를 생성하도록 합니다.


autoscan은 configure.ac를 생성할 수 있도록 어느정도 자동화 되어 있는 툴입니다.

configure.ac의 문법을 잘 모를때는 참 다행이 아닐 수 없겠네요, 기본 틀을 제공 받고 필요한 내용은 별도로 추가를 하면 되니까요.


우선 아래와 같이 autoscan을 활용해 봅니다.

[oops@ helloworld]$ ls

hello.c

[oops@ helloworld]$ 

[oops@ helloworld]$ autoscan 

[oops@ helloworld]$ 

[oops@ helloworld]$ ls

autoscan.log  configure.scan  hello.c

[oops@ helloworld]$ 


autoscan을 하고 나면 configure.scan이라는 파일과 관련 log파일이 생성이 됩니다.

configure.scan은 configure.ac와 동일한 파일입니다. autoscan을 통해 만들어졌다는 확장자이겠지요.


configure.scan의 파일 내용은 아래와 같습니다.

#                                               -*- Autoconf -*-

# Process this file with autoconf to produce a configure script.


AC_PREREQ([2.68])

AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])

AC_CONFIG_SRCDIR([hello.c])

AC_CONFIG_HEADERS([config.h])


# Checks for programs.

AC_PROG_CC


# Checks for libraries.


# Checks for header files.


# Checks for typedefs, structures, and compiler characteristics.


# Checks for library functions.


AC_OUTPUT


이제 이 파일을 configure.ac로 복사하도록 합니다.

[oops@ helloworld]$ cp configure.scan configure.ac

[oops@ helloworld]$ 

[oops@ helloworld]$ ls

autoscan.log  configure.ac  configure.scan  hello.c

[oops@ helloworld]$ 


이제 configure.ac가 생겼으니 autoconf를 활용할 수 있습니다.

[oops@ helloworld]$ autoconf 

[oops@ helloworld]$ 

[oops@ helloworld]$ 

[oops@ helloworld]$ ls

autom4te.cache  autoscan.log  configure  configure.ac  configure.scan  hello.c

[oops@ helloworld]$ 

[oops@ helloworld]$ 


configure는 기본적으로 bash문법을 따르기 때문에 필요한 부분은 추가로 작성 할 수 있습니다.

이렇게 자동으로 생성 된 configure는 기본적인 내용만 담겨 있으니까요.


다음장에서는 automake에 대해 살펴보겠습니다.



-------------------------------------------------------------

configure.ac가 없는 상태에서 autoconf는 정상적으로 수행되지 않습니다.

[oops@ helloworld]$ autoconf 

autoconf: error: no input file

[oops@ helloworld]$ 

[oops@ helloworld]$


'개발 > GNU Build System' 카테고리의 다른 글

2장. configure 만들기  (0) 2014.01.29
1장. autotools 개론  (0) 2014.01.28
configure, Makefile ?  (0) 2014.01.10
댓글
댓글쓰기 폼