GNU Autotools에 대해...

icanfly의 이미지

항상 소스를 받아다 컴파일을 하면서 configure.in 등이 뭐하는건지도

잘모르고, 어떻게 작성하는지 하나도 몰라서 한심해 하다가....

재미삼아 하는 프로그램에라도 도입해보자 싶어서,

GNU AUTOCONF, AUTOMAKE, AND LIBTOOL 이라는 책을 거금들여

샀는데요......이 책을 죽 읽어보면 대충 감이라도 잡을 수 있을까요?

이런 툴을 잘 다루시는 분들은 어떻게 접근을 하셨는지...

답변을 부탁드립니다.

근데 이거 프로그래밍 관련 질문 맞겠죠? 자유게시판에 가야되나 싶어서

한참 고민했는데....

eminency의 이미지

그 책 어디 팔아요? -_-;;;

국내엔 안 보이는 거 같던데 아마존에서 사신 건가요?

노루가 사냥꾼의 손에서 벗어나는 것 같이, 새가 그물치는 자의 손에서 벗어나는 것 같이 스스로 구원하라 -잠언 6:5

icanfly의 이미지

이번에 제가 일하게 된데가 외국 서적 유통회사에 시스템을 통합해주는

작업을 하게 되서 기거다가 부탁했더니 한 20일 걸려 구해다 주더군요.

교보보다 싸게 해준다고 해서 샀는데 교보에 바로 주문해도 구해다 줄텐데요..

pynoos의 이미지

GNU의 Autools 는 UNIX 에서 프로그램 하시고자하는 분들에게는 강력히 필요한 존재입니다.
하는 일의 분야가 SI여서, porting에 대한 Issue가 적다할지라도, 충분히 가치가 있는 툴입니다.

하지만, 사용에 대한 진입장벽이 높은 것이 사실이고, 한번 익숙해지면, Bourne shell programming과 m4 매크로 처리 툴,
그리고 source간 dependecy check를 통한 빌드, 일괄 option 적용, shared library handling 등 상당한 량의 지식을 통째로 얻게 됩니다.

icanfly의 이미지

진입장벽이 높은게 맞군요.

전 왠만하면 다들 알고계시는듯...보여서...

책을 훝어 봐도 좀 어려운거같긴한데 짬나는데로 열심히 읽어봐야겠습니다.

언젠가 도터질 날이 오면 좋으련만....

ddt의 이미지

autotools관련 helloworld만들기 튜토리얼등을 보면서 익히면 좀 더 쉽습니다.
http://gnome.or.kr/wiki/AutoTools
http://gnome.or.kr/wiki/AutoConf
이 문서 외에도 gnome.or.kr wiki에서 검색해보면 한글로 번역된 문서가 몇 개 더 있으니 참고하세요 :)

windower의 이미지

저도 Beginner라 잘은 모르지만
autotools관련 툴은 유용한 툴같습니다.

Blob이란 부트로더를 분석해 보려고
이것부터 막혔었는데...
저는 참고할때 이 사이트 내의 권순선님이
올려주신 ppt파일과 gnu메뉴얼,Howto문서가
좋았다고 생각합니다.
(물론 제가 찾을 수 있는 최대한의 정보가 아녔을까..ㅡ_ㅡ;)

Always

pynoos의 이미지

사족을 달자면,

autotool로 알려진 autoconf, automake, libtool은 원래 따로따로 개발 된것이 상호작용하게 된 것입니다.

따라서, 다음과 같은 조합이 가능합니다.

1 autoconf
2 autoconf, automake
3 autoconf, automake, libtool

이들은 모두 perl, shell script 이기 때문에 내용을 직접 열어보시는 것도 좋습니다.

이 툴들은 제각각인 Makefile의 스타일을 통일 시켜 주고, 팀웍으로 일 하는데 좋습니다.
팀에서 이 툴의 사용을 반대하는 사람들의 큰 특징은 불편하다..! 인데, 잠시 참으십시오..

팀으로 일하려면 언어만 알아서는 안됩니다.
개발 방법에 대한 통일이 절대적으로 필요한데,
이왕이면, 많이 사용하는 툴로 통일하는 것이 좋지요.

그리고, autoconf는 개발자마다 버전을 통일하여야 재미있습니다.

버전 체크를 확실히 하는데, 이는 내부구조가 많이 바뀌기 때문입니다.

전 너무 옛날 버전으로 개발하는 통에 요즘 버전의 autotool을 사용못하고 있는 딜레마가 있습니다. -.-

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.