zoukankan      html  css  js  c++  java
  • [BuildRelease]跨平台构建工具SCons

    一 SCons

     SCons是下一代的开源的软件构建工具。

    主页:http://www.scons.org/

    参考:http://www.angelfire.com/linux/skip/Articles/SConsExamples.html

    二 Scons特点

    特点如下:

    1)配置文件是python脚本(使用功能强大的真实的编程语言解决build的问题)。

    2)内置的C/C++/Fortran的可信的,自动的依赖分析,不在需要make depend或make clean来得到所有的依赖关系。依赖关系分析很容易使用用户定义的dependency scanner扩展到其他的语言和文件类型。

    3)内置的支持c/c++/d/java/fortran/yacc/lex/qt/swig和构建tex和latex文档。很容易通过用户定义的builder来支持其他的语言和文件类型。

    4)build从源码管理工具(SVN。。。)或其他的build脚本(ant。。。)。

    5)内置支持从源码管理工具fetch代码,例如sccs,rcs,cvs,bitkeeper和perforce。

    6)内置支持所有的Microsoft VisualStudio的所有版本,包括产生dsp,dsw,sln和vcproj文件。

    7)可信的使用MD5签名来检测build的changes,同时也支持配置为传统的时间戳来检测changes。

    8)改进了并行build,像make -j,同时运行N个job,不决定于目录的继承结构。

    9)集成像autoconf的find #include 文件,libraries,functions和typedefs。

    10)所有的依赖的Global view。

    11)能够share built files in a cache to speed up multiple builds, 像CCache但是不局限于C/C++。

    12)从一开始就设计为跨平台,所以支持所有的系统(known to work on Linux, other POSIX systems (including AIX, *BSD systems, HP/UX, IRIX and Solaris), Windows NT, Mac OS X, and OS/2.)。

    三 实例hello

     1)文件:

    D:\SCONS
    │  
    └─sample
            hello.c
            SConstruct

     2)hello.c

    #include <stdio.h>

    int main() {
      printf(
    "Hello World.");
    }

     3)SConstruct

    Program('hello.c')

     4)build

    四 other

    1)Builder: Program(),Library(),SharedLibrary(),Object(),Other Language Builders。program(''hello.c)。
    2) Construction environment: 环境变量。env=Environment(CC = 'gcc', CCFLAGS = '-O2')。
    3) SConstruct: 跟目录下的SConstruct file。
    4)SConscript:子目录下的Sconscript file。

    完!

  • 相关阅读:
    字节
    服务器每个网站占用资源
    in exists 条件查询
    NUnit2.0详细使用方法
    敏捷方法之极限编程(XP)和 Scrum区别
    学习内容及计划
    关于查看网页源文件不显示源代码(打开的是桌面文件夹)的问题
    用JS取float型 小数点 后两位
    [转]什么是CMMI?
    六月新版微软一站式示例代码库发布 新增20个Windows示例代码
  • 原文地址:https://www.cnblogs.com/itech/p/2176243.html
Copyright © 2011-2022 走看看