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(一)

今天茶饮很丰富

相关推荐
天上路人12 小时前
AI 降噪不是“凭空复原语音”,而是在“已有语音信息”的基础上进行增强。
ide·人工智能·macos·语音识别·xcode
один but you13 小时前
【无标题】
macos·objective-c·cocoa
AI行业学习14 小时前
CC-Switch 下载、安装与使用全指南Windows+macOS+Linux【2026.5.28】
linux·windows·macos
Digitally17 小时前
5 种将 Galaxy 数据拷贝到 Mac 的方法
macos
ruanyongjing18 小时前
元数据驱动开发 - 面向对象编程思想的补充 (十二)
nginx·macos·docker
搬砖的小码农_Sky19 小时前
macOS Sequoia 命令行(终端)完全使用指南
macos
ting945200019 小时前
ModelHub 深度技术解析:macOS 原生菜单栏 LLM 模型管理工具,补齐 Ollama/MLX/LM Studio 生态短板
人工智能·macos·架构·策略模式
我有满天星辰19 小时前
【那些年踩过的坑-前端篇- Mac版本】Mac 从零搭建 Node 环境:nvm + Node + Vue 实战(避坑终极版)
前端·vue.js·macos
搬砖的小码农_Sky20 小时前
macOS Sequoia 开发人员专属命令行速查表
macos
ServBay1 天前
2026 Mac 本地大模型部署深度解析与混合架构指南
后端·macos·aigc