Baidu Disk Not open on Ubuntu 16.04
Baidu released it’s ubuntu deb file, and found it crashed on openning.
error is as following:
baidunetdisk crashed with SIGABRT in __gnu_cxx::__verbose_terminate_handler()
first locate the desktop entry here:
$> /usr/share/applications$ find -name "*baidu*"
./baidunetdisk.desktop
$> /usr/share/applications$ vim ./baidunetdisk.desktop
[Desktop Entry]
Name=baidunetdisk
Comment=百度网盘
Exec="/opt/baidunetdisk/baidunetdisk" %U
Terminal=false
Type=Application
Icon=baidunetdisk
StartupWMClass=baidunetdisk
MimeType=x-scheme-handler/baiduyunguanjia;
Categories=Network;
tried open the gdb to figure out:
$> gdb
$> (gdb) run /opt/baidunetdisk/baidunetdisk
error output is as following:
Starting program: /opt/baidunetdisk/baidunetdisk /opt/baidunetdisk/baidunetdisk
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe8774700 (LWP 9003)]
[New Thread 0x7fffe7f73700 (LWP 9005)]
[New Thread 0x7fffe7303700 (LWP 9006)]
[New Thread 0x7fffe6b02700 (LWP 9007)]
[New Thread 0x7fffe5268700 (LWP 9008)]
[New Thread 0x7fffe4a67700 (LWP 9009)]
[New Thread 0x7fffe4266700 (LWP 9010)]
[New Thread 0x7fffe3a65700 (LWP 9011)]
[New Thread 0x7ffff7e16700 (LWP 9012)]
[libprotobuf FATAL google/protobuf/stubs/common.cc:61] This program requires version 3.3.0 of the Protocol Buffer runtime library, but the installed version is 2.6.1. Please update your library. If you compiled the program yourself, make sure that your headers are from the same version of Protocol Buffers as your link-time library. (Version verification failed in "./protobuf/cms_protocol.pb.cc".)
terminate called after throwing an instance of 'google::protobuf::FatalException'
what(): This program requires version 3.3.0 of the Protocol Buffer runtime library, but the installed version is 2.6.1. Please update your library. If you compiled the program yourself, make sure that your headers are from the same version of Protocol Buffers as your link-time library. (Version verification failed in "./protobuf/cms_protocol.pb.cc".)
Thread 1 "baidunetdisk" received signal SIGABRT, Aborted.
0x00007ffff1613428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) Quit
(gdb) Quit
key information is that the library for your protocol buffer rt is too old: This program requires version 3.3.0 of the Protocol Buffer runtime library
Let’s try to upgrade protocol buffer rt library:
# Make sure you grab the latest version
curl -OL https://github.com/google/protobuf/releases/download/v3.3.0/protoc-3.3.0-linux-x86_64.zip
# Unzip
unzip protoc-3.3.0-linux-x86_64.zip -d protoc3
# Move protoc to /usr/local/bin/
sudo mv protoc3/bin/* /usr/local/bin/
# Move protoc3/include to /usr/local/include/
sudo mv protoc3/include/* /usr/local/include/
# Optional: change owner
sudo chown $USER /usr/local/bin/protoc
sudo chown -R $USER /usr/local/include/google
Now reboot system and see if you can open it.