macOS - 安装 b2 (Jamfile)

文章目录

    • [安装 b2](#安装 b2)
    • [关于 b2](#关于 b2)
      • [chain of events](#chain of events)
      • [use B2](#use B2)
    • [b2 help](#b2 help)

安装 b2

官方文档 - Installation:https://www.boost.org/doc/libs/1_84_0/tools/build/doc/html/index.html#bbv2.installation


1、下载

前往 github - b2 - releases
https://github.com/bfgroup/b2/releases

这里我下载当前最新的 5.1.0 版本
https://github.com/bfgroup/b2/releases/download/5.1.0/b2-5.1.0.zip

解压zip文件


2、编译

进入解压后的文件夹,输入

shell 复制代码
./bootstrap.sh

3、安装

你可以设置指定安装文件夹,作为 b2 home,放到 PREFIX 位置

shell 复制代码
./b2 install --prefix=PREFIX

这里我创建文件夹 /Users/xx/Documents/software/b2

shell 复制代码
./b2 install --prefix=/Users/user/Documents/software/b2

安装成功,可以打印版本信息试试:

shell 复制代码
$ /Users/xx/Documents/software/b2/bin/b2 --version
B2 5.1.0 (OS=MACOSX, jobs=8)

4、添加到环境变量


关于 b2


B2 由两部分构成

  • 一个编译引擎,具有其自己的解释语言
  • B2 自身,以该语言实现。

chain of events

The chain of events when you type b2 on the command line is as follows:

  • The B2 executable tries to find B2 modules and loads the top-level module. The exact process is described in the section called "Initialization"
  • The top-level module loads user-defined configuration files, user-config.jam and site-config.jam, which define available toolsets.
  • The Jamfile in the current directory is read. That in turn might cause reading of further Jamfiles. As a result, a tree of projects is created, with targets inside projects.
  • Finally, using the build request specified on the command line, B2 decides which targets should be built and how. That information is passed back to Boost.Jam, which takes care of actually running the scheduled build action commands.

use B2

So, to be able to successfully use B2, you need to know only four things:

  • How to configure B2
  • How to declare targets in Jamfiles
  • How the build process works
  • Some Basics about the Boost.Jam language. See the section called "Boost.Jam Language".

b2 help

shell 复制代码
$ b2 --help
B2 4.6-git

Project-specific help:

Project has jamfile at Jamfile

This Jamfile requires boost-build v2 to build.

The version shipped with boost 1.34.0


General command line usage:

b2 options properties targets

Options, properties and targets can be specified in any order.


Important Options:

  • --clean, Remove targets instead of building
  • -,a Rebuild everything
  • -n, Don't execute the commands, only print them
  • -d+2, Show commands as they are executed
  • -d0, Suppress all informational messages
  • -q, Stop at first error
  • --reconfigure, Rerun all configuration checks
  • --debug-configuration, Diagnose configuration
  • --debug-building, Report which targets are built with what properties
  • --debug-generator, Diagnose generator search/execution

Further Help:

The following options can be used to obtain additional documentation.

  • --help-options, Print more obscure command line options.
  • --help-internal, B2 implementation details.
  • --help-doc-options, Implementation details doc formatting.

...found 1 target...


伊织 2024-03-25(一)

今天茶饮很丰富

相关推荐
十五年专注C++开发3 小时前
fatal error C1189: #error: WinSock.h has already been included 的解决方案
c++·socket·boost
greasyfork10 小时前
多种数据库管理混乱?Navicat Premium 17 for Mac 统一解决
数据库·mysql·macos·mac
碎_浪12 小时前
Mac 壁纸被 MDM 锁住?我做了个 2MB 的开源方案
macos·开源·swift
逆向编程14 小时前
AI编程CLI两种配置方案(macOS专用)
macos·ai编程
沐禾安信14 小时前
开会来不及记录?Mac 录屏方法收好
macos·音视频·电脑录屏
ITKEY_1 天前
macOS brew 安装的nginx 文件在哪里?
运维·nginx·macos
大E帝国子民11 天前
MacOS 安装Seismic Unix
服务器·macos·unix
z***刺1 天前
VMware安装macOS安装教程(附安装包)2025超详细下载安装教程
其他·macos
ReaF_star1 天前
【工具】把 eDiary 改造成了“云日记本”:两台 Mac 同步笔记的折腾记录
macos·效率工具·文件同步·icloud drive·ediary·mac 自动化
狂热开发者1 天前
用 Typeoff 把会后口述整理成 Markdown 决策记录
人工智能·windows·macos·ios·安卓