2009-07-29 27 views

Trả lời

6

tốt nhất hướng dẫn mà tôi đã tìm thấy cho makefiles cho đến nay đã được this one. Một trong những lựa chọn khác của bạn là tìm hiểu các autotools và để chúng tạo ra các makefiles cho bạn, mặc dù một chút lỗi thời this là hướng dẫn mà tôi tìm thấy tốt nhất để học hỏi.

+2

FYI: CMake cũng tạo ra makefiles, và đơn giản hơn và ít mong manh sau đó các autotools. Bạn có thể tìm thấy hướng dẫn cho nó tại http://www.lazycodemonkey.com/?p=46=1 và hướng dẫn sử dụng lệnh của CMake tại http://www.cmake.org/cmake/help/cmake2.6docs.html . Tất cả những gì cần thiết để sử dụng CMake là tạo một tệp "CMakeLists.txt" và thêm các lệnh thích hợp (sử dụng hướng dẫn). –

+0

Liên kết chính (makefilehowto) bị hỏng. – JonnyJD

+0

Chỉ cần thêm www. ở phía trước của liên kết, do đó, nó là www.wlug.org.nz/MakefileHowto. Trang web đó chỉ là những gì tôi đang tìm kiếm. –

3

Đây là tất cả các bạn cần: make

+0

Cụ thể hơn [http://www.gnu.org/software/make/manual/make.html](http://www.gnu.org/software/make/manual/make.html) là tất cả các bạn nhu cầu. – Aust

8

Bạn cũng có thể sử dụng số tutorial by example này. Nó cung cấp các ví dụ rất dễ dàng sẽ làm việc cho các dự án đơn giản.

2

Trong khi tốt và tốt là bạn học cách đọc và viết Makefile, tôi khuyên bạn nên sử dụng CMake cho các bản dựng C/C++ thay vì viết Makefile của riêng bạn. Rất khó để tạo ra một Makefile di động, đó là lý do tại sao cộng đồng C++ chuyển từ các makefiles thủ công sang sử dụng các Autotools của GNU (Automake, Autoconf, Autoheader, Autoreconf, Libtool, vv ..) Tuy nhiên, sự phức tạp cực đoan của GNU Autotools còn lại nhiều để được mong muốn, dẫn đến việc tạo ra các CMake, mà nhanh chóng trở thành công cụ xây dựng của sự lựa chọn cho cộng đồng C/C++. Nó đã được chấp nhận bởi một số growing list of projects, bao gồm cả KDE.

+0

"việc tạo ra CMake, nhanh chóng trở thành công cụ xây dựng được lựa chọn cho cộng đồng C/C++" Tôi tiếp tục nghe điều này, và tôi không tiếp tục gặp nó trong tự nhiên. Có lẽ tôi chỉ sử dụng phần mềm sai, nhưng bạn có thể chỉ ra một ví dụ không? – dmckee

+1

Tôi đã đưa ra một liên kết đến danh sách một số dự án sử dụng CMake cho quá trình xây dựng của họ. BOOST hiện đang thử nghiệm với CMake (họ vẫn có cơ chế xây dựng cũ của họ, nhưng bây giờ có một bản xây dựng CMake, mà cuối cùng sẽ thay thế quy trình dựa trên JAM của họ), với KDE4, KDE đã chuyển sang sử dụng CMake, Hệ điều hành Robotics (ROS) sử dụng CMake rộng rãi, và tôi khá chắc chắn rằng Mesa3D (một triển khai OpenGL miễn phí) hiện sử dụng CMake. Tất cả những dự án này đều là dự án C/C++ lớn và các dự án ô, và danh sách này vẫn tiếp tục phát triển. –

+0

Xem thêm: http://www.lazycodemonkey.com/?p=46=1 –

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