[好书推荐] [Linux编程] Managing Projects with GNU Make (3ed)
1。基本信息书名: Managing Projects with GNU Make
版本:Third Edition: November 2004
媒质:电子版,CHM格式
作者:Robert Mecklenburg
ISBN 10: 0-596-00610-1
ISBN 13: 9780596006105
Pages: 300
下载地址
http://suniap.ys168.com
2。推荐理由
前面我推荐了Linux下编程的两本书:
Advanced Bash-Scripting Guide
http://www.readfree.net/bbs/read.php?tid=306527&keyword=
sed & awk (2nd Edition)(O'Reilly,1997)
http://www.readfree.net/bbs/read.php?tid=309144&keyword=
上面的两本都是介绍Shell编程基础的教程,这是我们在Linux环境下必须的生存技巧。但是最我们之所以选择Linux,最终的目的恐怕不是学到里就够了,而是在Linux环境下进行我们自己需要的编程,比如 c/c++ 或者 数值计算领域里常用的 Fortran 或者其他程序语言。
当这些程序语言写的项目大了之后,会出现一个又一个小文件(子程序、函数之类),如何能够管理好这些程序,如何能够简化和优化编译过程,这就要借助于Make了。就算我们不自己写程序,在开源的Linux下,从源文件安装一个程序,也基本上全部是基于Make的。搜搜网上的说明 \"make install\" or \"make\" 这两个命令使用的频率极高。于是可见,对于Make的了解是非常必要的。
对于Make的教程,网络上同样是多如牛毛,权威的有Gnu的Make手册
http://www.gnu.org/software/make/manual/make.html
这本手册绝对是好的资料,但是我个人感觉如果只看手册或者一开始就看这个手册,未免有些累,因为这里面很多定义性的原理性的东西,大部分都是直接用语言表达的,不同层次的例子设计的少了一些。所以,对初学者来说,这种方式入门是有些痛苦的。
Managing Projects with GNU Make这本书的特点跟其他所有优秀的作品一样,最出色的是在其中的实例上,从入门到精通,一步一步用实例引人入胜。你在学习过程当中,从基本概念到务实操作,一切那么自然,没有任何的梯度感。
这本书的另一大特点就是结构清楚,分成三部分:
Part I: Basic Concepts
Part II : Advanced and Specialized Topics
Part III: Appendixes
读者可以根据需要,挑选你自己必须的部分学习,初习者可以只了解Part I部分,当你有时间有更高要求了的时候,再学习Part II部分。对于Make的熟手,Part III部分可以供查阅使用,效果不亚于\"man make\"
如果细心的读者一个一个自己尝试里面的实例,你会有意外的收获。比如,你会发觉里面会有关于库文件的详细介绍 (libxxx.a, libxxx.so,这些是Linux编程的重要的基本概念).
3。附中文影印版简介和英文部分用户的Review
作者简介:
Robert Mecklenburg——本书第三版的作者,在不同的平台和语言下使用make已经有数十年了。在本书中,他热心地列出了怎样让你的构建尽可能地有效,怎样减少维护,避免错误,并且让你彻底理解make在干什么。关于C++和Java的章节为使用这些语言的项目提供了优化的makefile条目。作者甚至提供了一个关于构建这本书的makefile的讨论
中文影印版简介
众所周知make工具是Unix和其他操作系统上最悠久的特色。make在20世纪70年代被发明,现在仍被作为大多数的编程项目的核心编译辅助工具在使用。它甚至可以构建Linux内核。本书第三版中,你将知道为何在许多新的竞争者出现的情况下这个工具仍在项目构建软件中占据头等位置。 make的思路很简单:当你改变了源文件并想重新构建程序或者其他的输出文件时,make检查时间戳看哪些改变了,并按要求重新构建这些文件,而不需要浪费时间重新构建其他文件。但是在这个基本的原则之上,make提供了丰富的选项集合,让你能够操作多个目录,为不同平台构建不同的版本,能够以其他的方式定制你的构建过程。本书第三版主要讨论了GNU版的make,它目前已经成为工业标准。书中仔细讨论了GNU make的各种扩展。GNU make非常流行,因为它是自由软件,为几乎每个平台包括Microsoft Windows(作为自由项目Cygwin的一部分)都提供了不同的版本。 Robert Mecklenburg——本书第三版的作者,在不同的平台和语言下使用make已经有数十年了。在本书中,他热心地列出了怎样让你的构建尽可能地有效,怎样减少维护,避免错误,并且让你彻底理解make在干什么。关于C++和Java的章节为使用这些语言的项目提供了优化的makefile条目。作者甚至提供了一个关于构建这本书的makefile的讨论。
英文部分用户的Review
I've been using gnu make for over a decade.
Everytime I read the make manual, I learn something new.
This book also taught me a few things -- but there are so many typos and windowisms...
If you spend a lot of effort and time writing make files, the book is useful, but for casual users the make manual is far superior.
Very disappointed -- was expecting much more.
----------------------------------
I'm impressed, I bought this as a aside to the standard GNU Make manual published by the FSF.
This is much more useful.
I don't need a inrtoductory book - I've designed and implemented multiple commercial operating system build system, I'm looking for ideas on how to build better build systems.
The explanation of the kernel build system helped, and the data structures examples was truly innovative.
Its interesting to see someone expose the full power of make, most are content to write minimal and naive Makefiles, or concentate on a single program - things get more \"interesting\" when you have a complete multiple project suite to build. 非常支持作者,这样的好帖竟然没有顶起来?可能是因为涉及的面太窄的缘故吧,但是值得肯定的是作者把帖子介绍得非常详细,连我这个LINUX初学者都有一目了然的感觉,支持! chm格式。。。。 呵呵,不错哦
页:
[1]