centos python ctypes 调用 c++11的so
centos python ctypes 调用 c++11的so
2014-12-29 13:52 admin
error 1 : OSError: /lib64/libc.so.6: version `GLIBC_2.14' not found
error 1 SOLVE:
(1)先查看系统支持的GLIBC
strings /lib64/libc.so.6 |grep GLIBC_
(2) 到http://www.gnu.org/software/libc/下载最新版本,我这里下载了glibc-2.14.tar.xz 这个版本,解压到任意目录准备编译
(3)在glibc源码目录建立构建目录,并cd进入构建目录
mkdir build
cd build
(4)编译安装
../configure --prefix=/opt/glibc-2.14
make -j4
make install
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
(5)strings /lib64/libc.so.6 |grep GLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_PRIVATE
error 2 : OSError: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.18' not found
RESOLVE:
前提安装了gcc4.9
strings /usr/lib/libstdc++.so.6| grep GLIBC
使用 gcc4.9 build 目录里面的 gcc/trunk/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.20
error 3:以上两步解决后系统出现locale错误,系统编码出现问题(centos 6.5)
RESOLVE:
从 http://pkgs.org/download/glibc
下载对应的glibc和glibc-common,我下载的是2.17版本
用这个命令安装两个包:rpm -ivh --force --nodeps glibc-2.17-55.el7.x86_64.rpm
rpm -ivh --force --nodeps glibc-common-2.17-55.el7.x86_64.rpm
安装完毕后 locale