scons-一种软件构造工具

SCons是一种开源软件构建工具,即下一代构建工具。

将SCons视为经典的Make实用程序的改进的跨平台替代品,它具有类似于autoconf/automake和ccache之类的编译器缓存的集成功能。简而言之,SCons是一种更容易,更可靠和更快的软件构建方式。

SCons的特点

  • 可靠,自动的依赖关系分析内置于C,C ++和Fortran,不再需要“使依赖”或“使干净”来获取所有依赖关系。通过其他语言或文件类型的用户定义的依赖关系扫描程序,可以轻松扩展依赖关系分析。

  • 配置文件是Python脚本-使用真正的编程语言来解决构建问题。

  • 对C,C ++,D,Java,Fortran,Yacc,Lex,Qt和SWIG的内置支持,以及构建TeX和LaTeX文档。通过用户定义的Builders可以轻松扩展其他语言或文件类型。

  • 从源代码和/或预建目标的中央存储库中构建。

  • 内置支持从SCCS,RCS,CVS,BitKeeper和Perforce中获取源文件。

  • 对Microsoft Visual Studio .NET和以前的Visual Studio版本的内置支持,包括生成.dsp,.dsw,.sln和.vcproj文件。

  • 使用MD5签名可靠地检测构建更改;对传统时间戳的可选,可配置的支持。

  • 改进了对并行构建的支持-类似于make -j,但无论目录层次如何,都能使N个作业同时运行。

  • 集成的类似Autoconf的支持,用于查找#include文件,库,函数和typedef。

  • 所有依赖项的全局视图-不再需要多次构建传递或对目标进行重新排序以构建所有内容。

  • 能够在缓存中共享构建的文件以加快多个构建的速度-例如ccache,但适用于任何类型的目标文件,而不仅限于C / C ++编译。

  • 完全针对跨平台构建而设计,并且已知可在Linux,其他POSIX系统(包括AIX,BSD系统,HP / UX,IRIX和Solaris),Windows NT,Mac OS X和OS / 2上运行。

SCons的由来

SCons作为ScCons构建工具设计而诞生,该设计在2000年8月赢得了Software Carpentry SC Build竞赛。

该设计又基于Cons软件构建实用程序。该项目已重命名为SCons,以反映它不再与Software Carpentry直接连接(嗯,并且使其输入起来更加容易...)。

执行要求

SCons软件包是用于在系统上安装SCons并使用它或对其进行实验的基本软件包。如果您只想试用SCons,则只需在此下载SCons

运行SCons需要Python 3.5或更高版本。应该没有其他依赖项或要求来运行scons。

默认的SCons配置假定在Win32系统上使用Microsoft Visual C ++编译器套件,并假定一个名为“ cc”的C编译器,一个名为“ c ++”的C ++编译器和一个名为“ gfortran”的Fortran编译器(例如在GNU中找到的) C编译器套件)在任何其他类型的系统上。当然,您可以通过适当配置Environment构造变量来覆盖这些默认值。

默认情况下,SCons知道如何在各种系统上搜索可用的编程工具-有关详细信息,请参见SCons手册页。当然,您可以覆盖由环境构造变量的适当配置做出的默认SCons选择。

测试

测试由该目录中的runtest.py脚本运行。

此程序包中有两种测试类型:

单个SCons模块的单元测试位于SCons子目录下,并且与附加了“ Tests.py”的模块具有相同的基本名称-例如,Builder.py模块的单元测试是BuilderTests.py脚本。

SCons的端到端测试位于test /子目录中。

您可以明确列出要运行的一个或多个测试:

$ python runtest.py SCons/BuilderTests.py

$ python runtest.py test/option-j.py test/Program.py

 

posted @ 2020-12-17 14:57  expressTHK  阅读(993)  评论(0)    收藏  举报
友情链接: 百度搜索  |  网盘搜索  |  图片搜索  |  中国搜索  |  文档搜索  |  视频搜索  |  优惠券搜索  |  数字图书馆  |  公开课搜索