本文共 2386 字,大约阅读时间需要 7 分钟。
安装完毕 PCRE 和 swig 之后,执行
swig -version
发现报错 如下:
swig: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
思路: 在服务器中找到 libpcre.so.1 相关文件,copy 到 swig 的安装 bin 目录下; 然后 把该目录 加入
环境变量中即可;
# 在自己用户目录下 | 或者 root 根目录下 进行全局搜索find | grep libpcre
# copy 到 swig bin 目录下cd ~/usr/swig/usr/local/bin/cp /home/moli/anaconda3/pkgs/pcre-8.39-1/lib/libpcre.so* .
lsccache-swig libpcre.so libpcre.so.1 libpcre.so.1.2.7 swig# 检查 so 库的依赖,发现 not foundldd swig linux-vdso.so.1 => (0x00007ffd0af18000) libpcre.so.1 => not found libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb250f01000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb250ceb000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb250921000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb250618000) /lib64/ld-linux-x86-64.so.2 (0x00007fb251283000)# 临时解决方法:export LD_LIBRARY_PATH=.# 再检查发现 可行ldd swig linux-vdso.so.1 => (0x00007ffd1e1c6000) libpcre.so.1 => ./libpcre.so.1 (0x00007f191f229000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f191eea7000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f191ec91000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f191e8c7000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f191e5be000) /lib64/ld-linux-x86-64.so.2 (0x00007f191f46c000)# 然后编辑配置文件,把动态库路径添加到 .bashrc 中vim ~/.bashrc # 动态库 路径添加到 自己的环境变量export LD_LIBRARY_PATH="/home/zhijian/usr/swig/usr/local/bin:$LD_LIBRARY_PATH"# 使配置生效. ~/.bashrc
ldd swig linux-vdso.so.1 => (0x00007ffc86d89000) libpcre.so.1 => /home/zhijian/usr/swig/usr/local/bin/libpcre.so.1 (0x00007efc702dd000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007efc6ff5b000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007efc6fd45000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007efc6f97b000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007efc6f672000) /lib64/ld-linux-x86-64.so.2 (0x00007efc70520000)
最终 swig -version
正确执行:
# 查看 安装版本,错误消失swig -versionSWIG Version 4.0.2Compiled with g++ [x86_64-pc-linux-gnu]Configured options: +pcrePlease see http://www.swig.org for reporting bugs and further information# 查看帮助swig -help
大家安装的 pcre 版本可能不一致,那么 libpcre.so.n 会不一样,目测该方法也可考虑:
转载地址:http://ycmxf.baihongyu.com/