ubuntu系统Protobuf指定版本安装,以及报错解决方法

本文详细介绍在Ubuntu系统中如何安装指定版本的Protobuf,包括安装前的环境准备,通过Git克隆特定版本,编译并解决无configure和makefile文件的问题,以及如何避免版本冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.查看protobuf版本

# protoc --version

2.安装指定版本protobuf

前提: 确保一下几个库都有安装

# sudo apt-get install autoconf automake libtool curl make g++ unzip

在此以安装protobuf3.6版本为例

# git clone -b v3.6.0 https://github.com/protocolbuffers/protobuf.git
//安装哪个版本,v后面直接修改即可
# cd protobuf
# git submodule update --init --recursive
// 该命令表示克隆protobuf的子模块,主要是gtest
//没有反应,没问题继续进行

编译protobuf源码,并进行安装

// 进入到克隆的protobuf目录
# cd protobuf
# ./autogen.sh
# ./configure --help//查看默认安装路径如下图所示,路径显示为/usr/local,则可以采用默认安装
# ./configure
# make
// 如果没有克隆子模块,make check会失败但是可以继续make install,但是使用某些功能时可能会出错
# make check
# sudo make install
# sudo ldconfig
// 输出protobuf版本信息则表示安装成功
# protoc --version

在这里插入图片描述

3.报错无configure和makefile文件等等,比如安装protobuf3.0版本

生成configure和makefile文件

# cd protobuf
# aclocal
# autoconf
# autoheader
# automake --add-missing
# ./configure --help//查看默认安装路径,若路径显示为/usr/local,则可以采用默认安装
# ./configure
# make
# sudo make install

./configure一定要查看路径,因为ros自带protobuf2路径是在/usr/include下,如果不加路径的话,则会默认安装到/usr/include下,那个google文件就是了。这个结果则会导致protobuf2和protobuf3冲突,在编译cartographer文件的时候报错!!!
若路径显示为/usr,则需要改变默认路径

./configure --prefix=/usr/local

继续上述步骤,make ,sudo make install

若有报错出现configure.ac:*: error: required file ‘autoconf/ltmain.sh’ not found
安装libtools

# sudo apt install libtool

执行

# libtoolize --automake --copy --debug --force

若有报错出现config.status: error: cannot find input file: `Makefile.in’

# aclocal
# libtoolize –automake 
# automake --add-missing
# ./configure
# make
# sudo make install

4.检查protobuf版本

# protoc --version

参考链接
参考链接:自动生成configure和makefile
参考链接:Ubuntu18.04同时安装两个版本的protobuf

### 安装 TensorFlow CPU 版本Ubuntu 系统 #### 准备工作 确保系统已更新至最新状态并安装了必要的依赖项。对于 Python 的开发环境而言,推荐使用 Anaconda 来管理包和虚拟环境。 #### 使用 Anaconda 安装 TensorFlow #### 创建 Anaconda 虚拟环境 创建一个新的 Conda 环境专门用于 TensorFlow 开发可以有效避免库冲突问题。执行命令来建立名为 `tensorflow_env` 的新环境,并指定 Python 版本: ```bash conda create -n tensorflow_env python=3.8 ``` 激活此环境以便后续操作都在该环境中进行[^1]: ```bash source activate tensorflow_env ``` #### 安装 TensorFlow 在激活的环境下通过 Pip 工具直接从 PyPI 获取最新的稳定版 TensorFlow (CPU-only): ```bash pip install --upgrade tensorflow ``` 如果遇到特定版本需求或希望安装某个具体版本,则可指明版本号: ```bash pip install tensorflow==2.6.0 ``` 有时可能因为 Protobuf版本不兼容而引发错误,在这种情况下应该调整 Protobuf 至合适版本解决问题[^3]: ```bash pip install --upgrade protobuf==3.20 ``` #### 测试安装是否成功 为了验证 TensorFlow 是否正确安装以及能够正常运行,可以在终端里输入以下 Python 命令来进行简单测试: ```python python3 -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))" ``` 当看到输出结果而非报错信息时即表示 TensorFlow 成功安装并且能够在当前机器上正常使用[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值