원본: http://sources.redhat.com/autobook/
저자: Gary V. Vaughan, Ben Elliston, Tom Tromey, Ian Lance Taylor
역자: wariua.myid.net
라이센스: Open Publication License 0.4 혹은 그 이상. (부록 E 참고. 1.0 버전 대강 번역 참고.)
기준 버전: autoconf 2.59, automake 1.9.6, libtool 1.5.22
관련 패키지: autobook
1. 소개 (미완)
2. 역사 (미완)
9. 소규모 GNU Autotools 프로젝트
9.1 실전 GNU Autotools
9.2 간단한 쉘 라이브러리
9.3 예제 쉘 프로그램
11. `configure.in' 및 `Makefile.am'과 GNU Libtool 사용하기 (작업중)
12. 대규모 GNU Autotools 프로젝트 (미완)
14. 구성된 패키지 설치 및 제거하기 (미완)
15. GNU Autotools로 이식성 있는 C 작성하기 (미완)
16. GNU Autotools로 이식성 있는 C++ 작성하기 (미완)
18. GNU libltdl 사용하기 (미완)
19. GNU Autotools 고급 사용법 (미완)
20. 복잡한 GNU Autotools 프로젝트 (미완)
23. 새로운 Autoconf 매크로 작성하기 (미완)
24. 기존 패키지를 GNU Autotools로 이전하기 (미완)
25. Cygnus Cygwin에서 GNU Autotools 사용하기 (미완)
26. GNU Autotools로 크로스 컴파일 하기 (미완)
A. GNU Autotools 설치하기 (미완)
B. 플랫폼 (미완)
D. Autoconf 매크로 목록 (미완)
1980년대를 기억하시나요? 유닉스의 자유 소프트웨어 베테랑 사용자라면 그 때에는 (USENET을 통해) 많은 프로그램이 소스 코드로 배포되었지만 그 프로그램들을 컴파일하고 설치하는 방법에는 별로 일관성이 없었다고 증언할 수 있을 겁니다. 패키지가 복잡한 경우라면 더더욱 나름의 독특한 빌드 절차를 가지고 있을 가능성이 있었고, 이를 먼저 배워야만 했습니다. 그리고 이식성 문제에 대한 널리 쓰이는 접근법도 없었습니다. 각 소프트웨어 저자는 이를 서로 다른 방법으로 처리했습니다.
현재로 시각을 돌려봅시다. 어떤 실질적 표준이 그 문제들을 풀기 위해 널리 쓰이고 있는데, 이를 사용하는 것은 자유 소프트웨어 패키지만이 아닙니다. 초대형 컴퓨터 회사에서 만든 일부 독점 프로그램들이 이 소프트웨어를 이용해 만들어집니다. 이는 윈도에서도 그러합니다.
1990년대에 진화를 해나가면서 그것은 몇몇 좋은 개념들의 힘을 보여주었습니다. 전문성을 공유하는 것, 반복적 작업을 자동화 하는 것, 필요한 곳에선 일관성을 유지하면서도 필요한 곳에선 유연성을 희생하지 않는 것이 바로 그것입니다.
"그것"은 과연 무엇일까요? 바로 GNU Autotools입니다. GNU 프로젝트를 위해 1990년대에 개발된 일군의 유틸리티입니다. 이 책의 저자들과 본인은 주요 개발자였는데, Autotools가 다른 여러 사람들의 문제를 해결하는 데에도 도움이 된다는 게 알려지면서 다른 많은 사람들도 공헌을 하였습니다. 이는 협력을 통해 개발된, 그리고 지금 GNU/Linux라 부르는 것을 이루고 있는 여러 프로젝트들 가운데 하나입니다. 공동체는 GNU Autotools를 널리 퍼지도록 해주었습니다. 사람들은 자신의 프로그램을 위해 그걸 사용하면서 필요하다고 생각하면 이를 확장했습니다. Libtool의 탄생이 바로 그러한 종류의 공헌입니다.
Autoconf, Automake, Libtool은 별개로 개발되었으며, 소프트웨어 구성 문제를 작게 나눔으로써 이를 좀 더 쉽게 다룰 수 있도록 하기 위한 것입니다. 하지만 이것들은 하나의 체계로서 쓰이도록 설계되었으며, 전체 시스템에 대한 문서가 있을 때 좀더 이해가 쉽습니다. 이 책은 소프트웨어 패키지보다 한 단계 위의 내용을 다루는 것으로, 이 전체 시스템 사용에 있어서 저자들의 전문적 지식을 최대한으로 제공하고 있습니다. 이 책은 소프트웨어에서의 문제 및 그 해결법 가장 가까이에서 살아온 사람들이 작성한 것입니다.
여기, GNU Autotools 엔진이 항공 연료에서 등잔 기름까지의 어떤 걸로도 돌아갈 수 있을 때까지 전문가들이 고쳐온 그 과정에 마법이 있습니다. 그리고 또 다른 종류의 마법이 있으니, 인터넷 상의 널리 쓰이는, 누구나 사용하고 개선할 수 있는 시스템을 만들어낸 협력과 공유가 바로 그것입니다. 저자들이 그들의 지식과 경험을 공유하고, 이제 당신도 공통체의 일원입니다. 아마 그 정신은 당신이 또 다른 공헌을 하도록 만들 수도 있겠지요.
David MacKenzie
Germantown, Maryland
June 2000
Back