在ubuntu16.04上安装python3.11.2、protobuf22.x
简介事情是这样子的...(简介结束)
过程
还是过程比较der,注重写过程吧
首先是python3.11.2,已经成功装好了,这个倒是简单,我忘了具体需要啥了,总之从apt-get装不了,只能从源码编译了。
大概就是这些命令:
./configure
make
make install以上的C++环境大概是这样的:
sudo apt-get install build-essential然后其他额外的库:
libncurses-dev libgdbm-dev libz-dev tk-dev libsqlite3-dev libreadline-dev liblzma-dev libffi-dev libssl-devpython装好了,截个图:
应该截图没暴露什么秘密吧~~~
然后是编译cmake,protobuf22.x要cmake 13?忘了。总之要个新版本才行,也得从源码编译
这个也很简单:
./configure
make
make install
然后可以从上图中看出来我的gcc有问题,它默认是用了build-essential里的gcc、g++以及c++。于是乎,我开始调他们的先后顺序:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 100 --slave /usr/bin/g++ g++ /usr/bin/g++-9 --slave /usr/bin/gcov gcov /usr/bin/gcov-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50 --slave /usr/bin/g++ g++ /usr/bin/g++-5 --slave /usr/bin/gcov gcov /usr/bin/gcov-5这样我默认的gcc和g++都选择的是9号版本,就可以成功编译出来protobuf了,在编译protobuf的时候,好像只能用cmake,我这个不是很确定,因为我找了一圈发现只认识cmake,然后你要把c++的标准选择为C++17,否则googletest里会有一些错误,在CMakeList.txt里加上:
add_definitions(-std=c++17)protobuf的源码编译真的是慢,想起来一件事,如果你要添加第三方的仓库说找不到add-apt-repository的时候,你执行下面的操作就可以了:
sudo apt-get install software-properties-common编译protobuf内存不足!!!!
没办法,加虚拟内存继续搞!
成了!然缺pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python get-pip.py最终我没有从protobuf安装成功python的protobuf,我从pip安装成功了:
所谓的车到山前自有路吧,尽管一开始我是想给电脑装个protobuf,结果搞了一大圈,反正是实现了最新版的python+一个22.x版的protobuf的环境了
页:
[1]