Unbuntu 22版本 安装Tbb

Unbuntu 22版本 安装旧版本Tbb指南

最近部署环境,发现需要tbb,但该库由于版本变更,安装遇到各种问题,下面记录我的部署流程!

  • 环境:PyTorch 2.1.0 、Unbuntu 22.04

问题原因:一些脚本依赖了 tbb_stddef.h,但在 TBB 新版本(2021 及更高)中,tbb_stddef.h 文件已经被移除。

解决:核心思路是改进项目中的 FindTBB.cmake 脚本,使其兼容 新旧版本 TBB,从而确保项目能够正常编译和运行。

安装步骤

1、克隆项目代码(根据你的项目)
例如:克隆 mvs-texturing 项目代码,执行以下命令:

git clone https://github.com/nmoehrle/mvs-texturing.git
cd mvs-texturing

2、创建本地分支

git checkout -b fix-tbb-compatibility

3、如果系统中未安装 TBB:

#提前通过以下命令安装 TBB:
sudo apt-get install libtbb-dev

4、拉取 PR 的内容,

git fetch origin pull/221/head:fix-tbb-compatibility-temp

将拉取的 PR 分支切换到当前使用:

git checkout fix-tbb-compatibility-temp

5、合并到当前分支(可选),如果需要将 PR 的更改合并到其他分支(如 main),执行以下命令:

git checkout fix-tbb-compatibility
git merge fix-tbb-compatibility-temp

应用更改后编译项目
删除旧的构建目录,清理之前可能存在的构建内容:

rm -rf build
mkdir build
cd build

配置 CMake
运行 cmake,重新生成项目的构建配置:

cmake .. -DTBB_INCLUDE_DIRS=/usr/include -DTBB_LIBRARY=/usr/lib/x86_64-linux-gnu/libtbb.so

注意:如果 TBB 安装在非默认路径,可通过 -DTBB_INCLUDE_DIRS 和 -DTBB_LIBRARY 指定路径。

编译项目
使用以下命令编译项目:

make -j$(nproc)

验证是否成功

  1. 检查构建结果
    确认构建是否完成,没有报错。如果成功,构建目录下会生成可执行文件。

  2. 测试 TBB 兼容性
    运行项目的功能,验证 TBB 的功能是否正常。你可以测试一下相关依赖 TBB 的功能模块。

其他注意事项

如何恢复到原始代码: 如果应用 PR 后想回到原始代码,可以切换回主分支并删除本地分支:

git checkout main
git branch -D fix-tbb-compatibility-temp
git branch -D fix-tbb-compatibility

完整流程命令概览

1. 克隆项目
git clone https://github.com/nmoehrle/mvs-texturing.git
cd mvs-texturing

2. 创建分支并拉取 PR
git checkout -b fix-tbb-compatibility
git fetch origin pull/221/head:fix-tbb-compatibility-temp
git checkout fix-tbb-compatibility-temp

3. 合并分支(可选)
git checkout fix-tbb-compatibility
git merge fix-tbb-compatibility-temp

4. 配置和编译
rm -rf build
mkdir build
cd build
cmake .. -DTBB_INCLUDE_DIRS=/usr/include -DTBB_LIBRARY=/usr/lib/x86_64-linux-gnu/libtbb.so
make -j$(nproc)

这个流程确保你正确应用了 PR 的修改,并完成了项目的配置和编译。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值