【一】version `GLIBCXX_3.4.22' not found
【问题描述】
./run_server: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ./run_server)
./run_server: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /home/rd/caiyueliang/AnyQ/build/third_party/lib/libpaddle_fluid.so)
这是因为当前版本的libstdc++.so.6缺少GLIBCXX_3.4.22.查看当前版本的GLIBCXX命令为,
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
【解决方法】
安装libstec++
sudo apt-get install libstdc++6
如果还未解决,则可以终端运行如下命令:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update sudo apt-get upgrade
sudo apt-get dist-upgrade
再运行命令
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
这时候应该就能看到GLIBCXX_3.4.22了,说明安装成功了。
【二】运行run_server报错,依赖库找不到
【问题描述】
./run_server报错,依赖库找不到,如下图:
error while loading shared libraries: libpaddle_fluid.so: cannot open shared object file: No such file or directory
【解决方案】
1)ldd run_server
看下run_server指向的libpaddle_fluid.so是否存在(查看依赖是否存在)
./run_server: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ./run_server)
linux-vdso.so.1 => (0x00007ffc55f66000)
libpaddle_fluid.so => not found
libmklml_intel.so => not found
libiomp5.so => not found
libglog.so.0.3.5 => not found
libcurl.so.4 => not found
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fb65891a000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fb658712000)
libssl.so.1.1 => not found
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007fb6584da000)
libcrypto.so.1.1 => not found
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb658158000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb657e4f000)
libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007fb657c2d000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb657a17000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb6577fa000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb657430000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb65a782000)
2)依赖库找不到,要重新加依赖库:
ls -s anyq代码路径/build/third_party run_server路径
或
cp -r anyq代码路径/build/third_party/lib run_server路径
或
export LD_LIBRARY_PATH=anyq代码路径/build/third_party/lib