Boost.Build

Boost.Build makes it easy to build C++ projects, everywhere.

Boost.Build让构建C++项目在任何地方都很容易。

You name your executables and libraries and list their sources. Boost.Build takes care about compiling your sources with right options, creating static and shared libraries, making executables, and other chores — whether you’re using gcc, msvc, or a dozen more supported C++ compilers — on Windows, OSX, Linux and commercial UNIX systems.

我们只需要命名可执行文件(库),并列出它们的源代码。Boost.Build负责在Windows、OSX、Linux和商业UNIX系统上使用正确的选项编译源代码、创建静态和共享库、创建可执行程序,以及其他一些繁琐的工作 — 不管是使用gcc、msvc还是其他十几个受支持的c++编译器。

  • Simple and high level build description. In most cases a name of target and list of sources is all you need.

  • 简单和高层次的构建描述。在大多数情况下,只需要目标名称和源列表。

  • Portability. Most important build properties have symbolic names that work everywhere. Why memorize compiler flags necessary for multi-threaded 64-bit shared library, if Boost.Build can do it for you?

  • 可移植性。最重要的构建属性都有符号名,这些符号名在任何地方都适用。如果Boost.Build能够代劳,为什么要记住多线程64位共享库所需的编译器标志呢?

  • Variant builds. When you build the same project twice with different properties, all produced files are placed in different directories, so you can build with 2 versions of gcc, or both debug and release variants in one invocation.

  • 多版本构建。当您使用不同的属性两次构建相同的项目时,所有生成的文件都放在不同的目录中,因此您可以使用gcc的两个版本进行构建,或者在一次调用中同时构建调试和发行版。

  • Global dependencies. No matter what directory you build in, Boost.Build will always check all dependencies in your entire project, preventing inconsistent binaries. And it’s easy to use one Boost.Build project in other, again with full dependency tracking.

  • 全局依赖关系。无论在哪个目录中构建,Boost.Build都会检查整个项目中的所有依赖项,防止不一致的二进制文件。而且在其他项目中使用一个Boost.Build项目也很容易,同样也具有完全的依赖性跟踪。

  • Usage requirements. A target can specify properties, like include paths and preprocessor defines, that are necessary to use it. Those properties will be automatically applied whenever the target is used.

  • 按需使用。目标可以指定需要使用的属性, 比如包含路径和预处理器定义。这些属性将在使用目标时自动应用。

Boost.Build特点(译)的更多相关文章

  1. Boost.Build 简明教程

    Boost.Build 简明教程 目录1. 介绍2. 构建过程3. 基本任务4. 项目管理5. 最佳实践6. 规则参考7. 特征参考 介绍 编译器和平台无关编译系统Boost.Build是一个高级编译 ...

  2. Boost 和 Boost.Build 的设置

    问题: 安装编译完 Boost 后,如果不设置 BOOST_ROOT 和 BOOST_BUILD_PATH 则可能导致使用 bjam 时定位到 Boost 默认的路径 /usr/share/boost ...

  3. Boost Build

    Window XP + Visual Studio 2008 获取Boost库源码 我们可以从http://www.boost.org/ 上获取boost的源代码.当前最新版本为1.45.0. 解压到 ...

  4. [boost] build boost with intel compiler 16.0.XXX

    Introduction There are few information about how to compile boost with Intel compiler. This article ...

  5. <转>boost 1.53 and STLPort build binary for windows

      1.编译STLPort:    1.1 .开始菜单运行vs2008的命令行工具    1.2.进入E:\00.CODE.SDK\STLport-5.2.1\    1.2.运行configure ...

  6. Boost(1.69.0) windows入门(译)

    目录 Boost windows入门 1. 获得Boost源代码 2. Boost源代码组织 The Boost Distribution 3. 仅用头文件的库 Header-Only Librari ...

  7. VC++2010下编译STLport,Boost

    VC++2010下编译STLport,Boost 最近在想向Boost转移,努力掌握Boost代码的过程中, STLport版本:5.2.1 Boost版本:1.4.6.1 (1.4.7.0也OK) ...

  8. Linux下Boost交叉编译

    http://davidlwq.iteye.com/blog/1580752 运行环境:ubuntu 12.04, boost 1.50.0 由于要把boost移植到arm板上去,所以折腾了一下,后来 ...

  9. Using Boost Libraries in Windows Store and Phone Applications

    Using Boost Libraries in Windows Store and Phone Applications RATE THIS Steven Gates 18 Jul 2014 5:3 ...

随机推荐

  1. linux free命令-显示内存的使用情况

    更多Linux 性能监测与优化 关注 Linux命令大全 free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区. 语法 free(选项) 选项 -b:以Byte为单 ...

  2. Django DTL模板语法中的循环

    from django.shortcuts import render def index(request): context={ 'books':[ '5年高考3年模拟', '家猪养殖与配种', ' ...

  3. 在Eclipse中设置Maven插件

    [步骤] Maven插件的设置: ①installations:指定Maven核心程序的位置.不建议使用Maven插件自带的Maven程序,而应该使用我们自己解压的那个. ②user settings ...

  4. gif & tools

    gif & tools https://www.cockos.com/licecap/ https://www.cockos.com/licecap/licecap128-install.ex ...

  5. [bzoj1356]Rectangle[Baltic2009][几何常识乱搞]

    虽然说是几何常识乱搞,但是想不到啊.. 题意:n个点取4个组成矩形,使面积最大,求面积. n<=1500 题解: 1.对角线相等且相互交于中点的四边形是矩形. 2.矩形四点共圆. 所以$n^2$ ...

  6. Hihocoder 1329(splay)

    Problem 平衡树 Splay 题目大意 维护一个数列,支持三种操作. 操作1:添加一个数x. 操作2:询问不超过x的最大的数. 操作三:删除大小在区间[a,b]内的数. 解题分析 和上一题相比, ...

  7. 3deye-demo-8-14-26-51

    源码

  8. Android: 帮助找出内存泄漏的工具

    1. Intellij Idea的Memory Monitor 通过Memory Monitor,我们可以知道哪个页面哪些操作会占用比较多的内存.如果需要更详细的信息,可以导出heap,通过MAT来分 ...

  9. SuperSwipeRefreshLayout 一个功能强大的自己定义下拉刷新组件

    SuperSwipeRefreshLayout 一个功能强大的自己定义下拉刷新组件. Why? 下拉刷新这样的控件.想必大家用的太多了,比方使用非常多的XListView等. 近期.项目中非常多列表都 ...

  10. 使用NDIS驱动监測以太网络活动

    转载自: http://blog.csdn.net/ddtpower/article/details/656687   本论文提供了NDIS的主要的理解,应用程序怎样与驱动程序交互.发挥驱动程序最佳性 ...