我该如何卸载protobuf 3.0.0?

时间:2016-03-09 15:51:49

标签: protocol-buffers uninstall

我使用此处的说明安装协议缓冲区:https://github.com/google/protobuf/blob/master/src/README.md 并以版本3("protoc --version" "libprotoc 3.0.0"

结束

但是,我需要一个protoc版本2.

我尝试使用apt-get remove protobuf-compiler

将其卸载

但这是我得到的,仍然安装了版本3:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'protobuf-compiler' is not installed, so not removed
0 to upgrade, 0 to newly install, 0 to remove and 396 not to upgrade.

我正在使用Ubuntu 14.04和#34;其中protoc"命令点在" / usr / bin / protoc"

我正在寻找一种替代解决方案而不是Protocol Buffer: Version Change

我不确定我是否使用正确的卸载命令。有什么建议吗?

5 个答案:

答案 0 :(得分:15)

我设法卸载了protoc 3.0.0(我以初学者的方式发布了答案,我需要解释才能理解):

1)remove命令不起作用,因为我在协议缓冲区页面上使用的指令使用make来构建工具 - 在使用apt-get安装时只使用remove

2)要删除使用make构建的所有库,请转到下载protoc文件的文件夹并运行make uninstall。那很有效。但是,当我再次使用protoc --version进行检查时,我仍然获得了libprotoc 3.0.0。我认为原因是因为我按照其中一条指令更改了安装路径(./configure --prefix=/usr),因此我需要使用rm `which protoc`手动删除protoc 3中的剩余部分,因为{{ 1}}没有指向它。之后,protoc完全消失了。

3)我使用make uninstall安装了我需要的版本(任何protoc 2),现在我已apt-get install protobuf-compiler

请随时发表评论。

答案 1 :(得分:4)

如果 Ubuntu 上安装了 Anaconda ,请使用:

conda uninstall protobuf

执行上述命令后,尝试:

protoc --version

以下输出确认已成功删除protobuf

  

目前尚未安装“protoc”程序。你可以安装它   输入:sudo apt install protobuf-compiler

如果您要安装Google协议缓冲区,请观看此视频: https://www.youtube.com/watch?v=EAFK-tN_yaw

答案 2 :(得分:3)

我使用了命令sudo apt-get remove protobuf-compiler,引用是How to remove protobuf-compiler from Ubuntu 14.04。希望这有帮助!

答案 3 :(得分:2)

我遇到了同样的问题,问题发生在usr/local/include/。它在您从源安装protoc时安装其头文件,当您卸载它时,它不会删除其包含头。因此,* .pb.cc文件仍尝试包含这些文件。我通过删除usr/local/include/中的protobuf标头,然后从apt-get重新安装libprotobuf来修复此问题。

答案 4 :(得分:0)

在Fedora 29上,sudo dnf remove protobuf删除了我先前安装的sudo dnf -y install protoc 3.5.0版本。

[dzintars@fedora ~]$ protoc
bash: protoc: command not found...