2010-07-08 39 views
14

Vì vậy, một vài năm trở lại tôi mất một thời gian để grok make, và nó được trả hết rất nhiều. Viết các makefiles nhỏ để xây dựng các dự án của tôi và tự động hóa các nhiệm vụ rất thú vị và hiệu quả.Làm thế nào để tìm hiểu niềm vui của Autotools?

Nhược điểm là, tất nhiên, các makefiles của tôi là quá đặc biệt, đặc biệt là khi nói đến nền tảng và vị trí thư viện.

Vì vậy, đây là điểm mà tại đó mọi người nói với tôi "autotools để giải cứu!" Và họ chắc chắn dường như làm các trick khi người khác làm chúng (tôi thích tải một cái gì đó và chạy configure && make && sudo make install và xem nó chỉ làm việc), nhưng tôi không thể quấn quanh đầu của tôi.

Tôi đã xem một số tệp configure.acMakefile.am và tôi không hiểu điều gì đang diễn ra. Tôi không biết phần nào của số nhận dạng là sự lựa chọn của nhà phát triển và phần nào có ý nghĩa đối với các autotools. Tôi không chắc tôi hiểu toàn bộ luồng và điểm của Makefile.in. Tôi nghĩ rằng tôi chỉ đánh một bức tường tinh thần phát ra từ hệ thống mà tôi đã quen thuộc (make) đến một cái gì đó là một hoặc hai lớp trên đó.

Bất cứ ai có thể chỉ cho tôi hướng dẫn một cuốn sách hướng dẫn hoặc cuốn sách (tốt nhất là không phải là quá khô) có thể dạy tôi niềm vui của autotools? Các bước là gì, và làm thế nào tôi có thể sử dụng chúng, làm thế nào tôi có thể viết của riêng tôi configure.acMakefile.am từ đầu? Cho tôi thấy làm thế nào để có hiệu quả và vui chơi với họ?

+2

Không thực sự trả lời câu hỏi của bạn, nhưng bạn cũng có thể cân nhắc đến cmake. Tôi thấy nó đơn giản hơn nhiều so với các autotools thông thường. –

+9

Bạn, với tư cách là một người sử dụng, đã học được niềm vui của các autotools. Bây giờ bạn sẽ tìm hiểu nó đau :) –

+1

Tôi thực sự có thể thừa nhận các ý kiến ​​từ @Evan Teran và @Vitor Py. Các autotools (đặc biệt là khi chúng đi cùng với libtool) có xu hướng gây ra rất nhiều đau đớn. Ở đây trong công ty chúng tôi hiện đang di chuyển ra khỏi autotools để cmake, mà không hối tiếc. – Rudi

Trả lời

5

Mặc dù tôi xem xét Autotools Tutorial Alexandre Duret-Lutz của, đã đề cập trong câu trả lời của elmarco, là tốt nhất rất sẵn, bạn nên cũng biết về Sách Goat:

http://sourceware.org/autobook/

Các phiên bản của công cụ đó giao dịch với khá cũ, nhưng đó là một giới thiệu tốt đẹp và nó được trình bày theo một trật tự logic. Nó cũng hoàn chỉnh hơn Hướng dẫn. Nó có lẽ là tốt nhất được sử dụng như là đọc bổ sung sau khi bạn đã làm việc thông qua Hướng dẫn.

CẬP NHẬT Ngoài ra còn có John Calcote's book, nó được xuất bản khoảng tháng 8 năm 2010 và nó thực sự tốt. Tôi không chắc liệu toàn bộ cuốn sách có trực tuyến tại liên kết đó hay không, nhưng ít nhất là một phần của nó.

9

Tôi không chắc chắn bạn có thể vui chơi với các hệ thống xây dựng ... Bạn đã đọc Hướng dẫn tự động chưa?

http://www.lrde.epita.fr/~adl/autotools.html

Có nguồn lực khác nhau về autotools, vấn đề là họ có xu hướng không đầy đủ, một chút lạc hậu vv ...

Một tài liệu gần đây và xuất sắc là Autotools Mythbuster, mặc dù nó không phải là một giới thiệu :

http://www.flameeyes.eu/autotools-mythbuster/index.html

+2

+1 cho các liên kết, cảm ơn! Nhưng tôi hy vọng bạn đã sai về khiếu nại ban đầu của mình. Với lập trình (và bất kỳ hệ thống xây dựng đủ phức tạp nào là lập trình), tôi thường nghĩ nếu bạn không vui vẻ, bạn đang làm sai. Đây có thể là xu hướng tương tự khiến các lập trình viên thích giải pháp phức tạp nhất khi một giải pháp đơn giản sẽ làm, nhưng điều đó dường như là một cuộc bỏ phiếu để kiểm duyệt nhiều hơn bất cứ điều gì khác. – rampion

+1

Phần khai sáng nhất của Hướng dẫn Tự động cho tôi là sơ đồ của các tệp được sử dụng để tạo các tệp khác và tất cả chúng có ý nghĩa gì. Đó là khoảnh khắc tôi hiểu được Joy of Autotools, và không còn nhìn thấy chúng như voodoo nữa. – ptomato

+1

Tôi rất nhiều thứ hai đề cập đến hướng dẫn Autotools của Alexandre Duret-Lutz (liên kết đã nói ở trên). Đối với một thời gian đầu tư chỉ một hoặc hai giờ làm việc theo cách của bạn thông qua bộ slide tuyệt vời của mình, bạn sẽ học đủ Autotools để có được cho hầu hết các trường hợp sử dụng. –

Các vấn đề liên quan