品牌受欢迎的原因与替代品的比较

发布于 2024-08-18 11:20:06 字数 647 浏览 6 评论 0原文

是什么力量在发挥作用,让粗糙的旧式 Make(无论是否带有 makefile 生成工具)作为构建工具脱颖而出?是替代方案的缺陷导致它们无法被广泛采用,还是宣传不足,还是 Make 的某些东西使其保持原状?

尽管 Make 在处理大型项目时存在许多弱点和困难 (例如参见http://freshmeat.net/articles/what-is-wrong- with-make)它似乎仍然比更新的、改进的替代方案(例如 Scons)使用得更广泛, Jam, RakeCook 等。

替代方案是否有可衡量的好处,或者“市场份额”主要取决于团队领导者的意见和经验吗?

What forces are at work keeping crufty old Make (with or without makefile generator tools) prominent as a build tool? Is it deficiencies in alternatives that keep them from being widely adopted, or insufficient publicity, or does something about Make keep it in place?

Despite Make's many weaknesses and difficulties dealing with large projects
(e.g. see http://freshmeat.net/articles/what-is-wrong-with-make) it appears to still be more widely used than newer, improved alternatives such as Scons, Jam, Rake, Cook, and others.

Are there measurable benefits to the alternatives, or are the "market shares" due mostly to opinion and experience of team leaders?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

一生独一 2024-08-25 11:20:07

它在大量平台上的可用性可能会有所帮助。如果为多个平台编写产品,知道它永远存在是一个优点。在构建自己的项目之前,必须将构建工具移植到新平台是一件痛苦的事情。

It's availability on a large number of platforms probably helps. If writing a product for multiple platforms, knowing it will always be there is a plus point. It's a pain to have to port your build tool to a new platform before you can build your own project.

因为看清所以看轻 2024-08-25 11:20:07

嗯,我从未使用 make 作为构建系统。

除此之外,它是一种独特的数据流编程语言,您可以在其中描述一组节点,每个节点服务于特定目的,描述它们的行为,并让管理器处理和控制它们之间的数据流。

Hm, I never used make as a build system.

Other than that, it's a unique dataflow-programming language, where you can describe set of nodes, each serving specific purpose, describe their behavior, and let the manager handle and control the data flow between them.

浪漫之都 2024-08-25 11:20:07

我们在一个相对较大的项目中使用 scons 来替换 make,并发现它是一个相当灵活的系统,它允许我们进行一些非常必要的(但非常不幸的)黑客攻击,以使事物按照我们需要的方式构建。另外,make 也很奇怪。

We used scons on a relatively large project to replace make, and found that it was a reasonably flexible system, that allowed us to do some very necessary (but very unfortunate) hacking to get things to build the way we needed them to. Also, make is -strange-.

自由如风 2024-08-25 11:20:07

我认为要看到向另一种工具的重大转变,首先必须创建该工具……这要好得多。为了影响变化,Linux 发行版之一或主要软件包之一必须切换到它,并且可能保留旧版本以实现兼容性。我设想新的构建工具将能够生成旧的 makefile。 linux已经展示了他可以如何很好地用git解决源代码控制系统。我有一个很好的预感,他可以想出一些很酷的东西并与 git 结合起来。

i think what would have to occur to see a big shift to another tool, is 1st the tool would have to be created.... that is significantly better. and to affect change, either one of the linux distros or one of the major packages would have to switch to it and probably keep the old one arround for compatibility. i would envision that the new build tool would be capable of generating the legacy makefiles. linux already demonstrated how well he can solve the source code control system with git. i have a pretty good hunch he could come up with something pretty cool and tie in with git.

清引 2024-08-25 11:20:06

普遍性:我喜欢Make,因为我相信它会在我需要的地方可用,即安装或轻松安装在目标计算机上。

Ubiquity: I like Make because I can trust it will be available where I need it i.e. installed or easily installable on the target machine.

红衣飘飘貌似仙 2024-08-25 11:20:06

它广泛可用、文档齐全、简洁且功能强大 + 最重要的是 - 没有 XML!

我已经使用它近 15 年了,但仍然没有找到更好的东西。我用它做过的最酷的事情是让主 makefile 即时为子项目生成 makefile。

It's widely available, well documented, concise and powerful + best of all - no XML!.

I've been using it for close to 15 years and still haven't found something better. The coolest thing I've done with it is to have a master makefile generate makefiles for sub projects on-the-fly.

长亭外,古道边 2024-08-25 11:20:06

关于你的问题,哪些力量在保持活力……是习惯的力量。

Regarding your question, which forces are keeping make alive ...its the force of habit.

撩动你心 2024-08-25 11:20:06
  • 简单性 - 容易做简单的事情
  • 普遍性 - 某些版本适合您的系统
  • 速度 - 对于大多数事情来说足够快 富有
  • 表现力 - 与工作非常匹配
  • 非明显的复杂性 - 主要是大型项目暴露问题
  • simplicity - easy to do simple things
  • ubiquity - some version is on your system
  • speed - fast enough for most things
  • expressive - pretty good match to the job
  • nonobvious complexity - mainly large projects expose problems
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文