![]() |
1
24
制造是 这个 所有C/C++的标准构建工具。其他许多人已经踏上了成功的征程,但即使他们很有用,也没有达到制造的普遍性。 make几乎安装在所有类似Unix的机器上。无论您使用的是AIX、Solaris、IRIX、BSD或Linux,如果安装了编译器,也有make。 有些“替换”(如automake、cmake)甚至创建makefile,而make则依次执行这些文件。 我愿意 一定地 建议熟悉品牌。如果由某人处理 学习 关于make,它是一个功能强大的工具,可以以多种方式使用,甚至不一定与软件开发相关。 即使您最终使用了不同的构建工具,您也可以“循环”使用make所学到的经验,因为基础概念非常相似。而大量的构建项目意味着总有机会找到一个现有的生成文件。 不过,有一件事。 Get it right from the beginning. |
![]() |
2
8
我认为您没有看到(GNU)make被提到的原因是它通常是默认的;如果您有一个GNU工具链,您将已经make了。因此,大多数人开始谈论构建工具,谈论其他事情。 根据我的经验,make很好,但是要让它做你想做的事情可能有点困难。这也许有点不可思议,但它已经被证明是可行的。 |
![]() |
3
3
之所以如此流行,是因为它在Linux /*NIX项目中主要用于C/C++源,并且比你提到的任何其他工具都要古老,因此它经受了时间的考验,已经成熟。有点像焦油。 老实说,我只知道制造。上面提到的其他工具可能更好,但是很多项目只是使用一个基本的makefile,你最好至少知道一点。不仅是你自己的工作项目,而且是你在网上找到的大多数开源项目。 |
![]() |
4
2
这真的取决于你会用多少。 如果你对C/C++项目做了很多工作,那么是的,我建议你多学一点,因为一个大的make文件比你提到的其他构建工具有更陡峭的学习曲线。 如果你不工作,或者用其他语言工作,比如C语言,Java或者PHP,那么你最好学习与这些语言相关的构建工具。 |
![]() |
5
1
像所有工具一样,如果你使用它,你应该花点时间 变得相当熟练。另外,一些工具(例如cmake)生成makefile,您可能有一天需要处理这些生成的文件。 GNU make有一个 excellent manual -花一两个小时来读当然值得。 |
![]() |
6
1
例如,make是Linux系统上的事实标准。它是一个非常复杂的工具,也是一个非常强大的工具。 它非常适合学习如果你正在开发C或C++,特别是如果目标为LINU/*NIX。 make的一个特性是,可以为何时重建文件设置依赖项。例如,将每个C或C++文件构建到.Obf文件中,最后,将所有.Obf文件链接到一个可执行文件。但是,可执行文件可能是一个静态链接库,它与其他.obj文件链接到另一个可执行文件中。 确保编译时间尽可能短,因为可以定义只有当C文件或任何相关头文件比.obj文件更新时,才应编译它。因此,只有当步骤的当前源文件比目标文件新时,才会执行任何编译或链接步骤。 如果您正在开发中,例如C,则不需要进行这种依赖性检查,因为所有.cs文件都会同时编译为一个可执行文件。 因此,结论是您应该使用一个非常适合您选择编程语言的构建工具。 |
![]() |
7
0
即使你最终喜欢另一个构建工具(我个人喜欢vs…我知道……)知道make可能会更有用。 make有许多应用程序,虽然它并不总是一项任务的理想选择,但在处理新技术时,它是坚定和灵活的。 |
![]() |
8
0
我猜你在哪里工作可能不一样,但我知道无论我在哪里工作,如果我至少没有学会如何阅读makefiles,我都会成为一个不那么有价值的员工。即使在所有Windows VisualStudio环境中,它也会不时出现。 例如,我们刚得到一个工作,它涉及将一堆旧的CX/UX代码移植到Windows。旧代码是用makefiles生成的。如果不知道如何读取这些旧的makefile,就无法理解他们的旧系统。 |
![]() |
Jeremy L. · 在变量名中查找子字符串 5 月前 |
![]() |
wvxvw · 在Make规则中将源和目标配对 6 月前 |
![]() |
thetango · Makefile:多次执行目标 6 月前 |
![]() |
Bokambo · make:MakeFile无需执行任何操作 7 月前 |
![]() |
Gergely · rm命令在shell中工作,但在Makefile中不工作 11 月前 |