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

今天茶饮很丰富

相关推荐
00后程序员张15 分钟前
完整教程:如何将iOS应用程序提交到App Store审核和上架
android·macos·ios·小程序·uni-app·cocoa·iphone
小河豚oO1 小时前
2. 初识 LLM API:环境配置与多轮对话演示
macos
June5611 小时前
SSH 免密 + 主机指纹登录完整安装步骤(macOS)
运维·macos·ssh
高斯的手稿08013 小时前
使用VNC从Windows/Mac复制文字,粘贴到树莓派终端里
macos
Maynor9964 小时前
刚刚!谷歌 Gemini 推出 Mac 客户端
macos
承渊政道6 小时前
【递归、搜索与回溯算法】(二叉树深搜模型拆解与经典题型全面突破)
数据结构·c++·学习·算法·leetcode·macos·bfs
月诸清酒6 小时前
33-260416 AI 科技日报 (Gemini桌面应用登陆Mac,快捷键唤醒)
人工智能·macos
辰风沐阳8 小时前
nvm - node 版本管理工具【macOS/Linux】
linux·运维·macos
xuanwenchao1 天前
Mac M1/M2/M3/M4/M5芯片-系统安装Ubuntu
linux·ubuntu·macos
WMSmile1 天前
macOS 上安装 Wails 3(wails3)步骤
macos