希望重新实现从bash/grep/sed/awk/(auto)make/configure到更合理的东西(例如。boost.build公司等)

2024-06-02 10:37:15 发布

您现在位置:Python中文网/ 问答频道 /正文

目前,我维护着几个盒子,里面装着一堆松散相关的编码项目、数据库和存储库(从一个自制的*nix发行版到我的课堂笔记),由我和几个同样面色苍白的书呆子朋友维护(所有这些聚宝盆都存储在SVN中)。在

<>我们的代码绝大多数都是在C/C++/汇编中的(一些实用程序是Python/Perl/PHP,我们不是java爱好者),编译在GCC中。我们的构建工具链通常由make、bash、grep、sed和awk组成。最近发现的Makefile几乎和它构建的程序一样长(以及每个人对我的神秘sed和awking的普遍焦虑)促使我寻求一个不那么痛苦的构建系统。在

目前,我遇到的最有力的候选者是boostbuild/Bjam,它是gnumake的替代品,python是构建相关bash脚本的替代品。还有其他C/C++ +ASM构建系统值得研究吗?我浏览了许多make替代品,但除了Boost之外,我没有找到任何一个是由我所知道的名字开发的

(我应该注意到,从svn命令行工具(如svnversion)中轻松提取信息的能力非常重要,同时还具有足够的灵活性,可以像c/c++项目一样轻松地配置asm项目的构建)


Tags: 工具项目bash数据库替代品编码make系统
3条回答

sconscmake。在

两种“跨平台”都支持在Windows和Linux上进行编译。在

Cmake现在非常流行(例如boost使用它)。它为每个平台创建本机构建文件—Makefiles(Linux),VC++项目(VisualStudio)(CMakeList.txt文件). In还可以创建Eclipse项目、KDevelop项目等,因为它创建了本机构建文件,所以您可以继续使用所使用的所有功能。例如,对于Makefiles,ccache/colorgcc/distcc,对于visualstudio,Visual Assist X。在

我们在我们的项目中使用它,并且对它感到满意——自动依赖、简单的语法、健壮的构建。在

Scons是python基础系统,它自己执行构建。它不那么受欢迎,而且对于大型项目来说仍然很慢。但对于msmall-to-medium项目来说可能是个不错的选择。在

您也可以使用基于python的构建系统http://code.google.com/p/waf/

我们最近开始在工作中使用CMake。到目前为止,我对它很满意。在

相关问题 更多 >