继更新curl之后,又发现一个命令yum不可用。
yum实际上是一个python脚本,里面导入了yum module。
调用了pycurl库,据了解pycurl 是libcurl的一个python接口。实际上也是调用的libcurl库。
yum info git
因为之前更新git,也需要更新curl。导致libcurl.so换成新的库了,与旧的pycurl.soAPI接口不一致。
最后下了pycurl 编码去编译,发现了问题。
编译pycurl.c时,报出错误,
src/pycurl.c:85:4: 警告:#warning "libcurl was compiled with SSL support, but configure could not determine which " "library was used; thus no SSL crypto locking callbacks will be set, which may " "cause random crashes on SSL requests"
undefine sysbol "CRYPTO_set_locking_callback" 对应 “SSL crypto locking callbacks”
自此找到原因,libcurl安装时的配置为/usr/local/bin/curl-config,系统默认的配置文件为/usr/bin/curl-config
使用以下命令重新编译安装了pycurl,才算解决问题。
python setup.py install --curl-config=/usr/local/bin/curl-config
参考:http://pycurl.io/docs/latest/install.html