Python3.6关于python-rrdtool报错的问题

关于centos6.9+Python3.6.5+virtualenv环境下,pip install rrdtool之后,导入rrdtool报错如下的问题?

[root@MrYang ~]# python -V
Python 3.6.0
[root@MrYang ~]# python
Python 3.6.0 (default, May  4 2018, 14:54:06)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import rrdtool
Traceback (most recent call last):
  File "", line 1, in
ImportError: /root/.pyenv/versions/env36/lib/python3.6/site-packages/rrdtool.cpython-36m-x86_64-linux-gnu.so: undefined symbol: rrd_flushcached
>>>

解决方法如下:

1、安装依赖

yum install -y gettext libffi pcre glib libpng freetype fontconfig pixman cairo fribidi graphite2 icu4c harfbuzz pango libtiff-devel.x86_64

2、安装rrdtool

yum -y instlal rrdtool

yum -y install rrdtool-devel

#这样安装rrdtool包,会报上面的错误,因此你需要手动编译安装rrdtool

wget https://oss.oetiker.ch/rrdtool/pub/rrdtool-1.5.6.tar.gz

tar zxvf rrdtool-1.5.6.tar.gz
cd rrdtool-1.5.6
./configure --prefix=/usr/local/rrdtool
make && make install

ln -s /usr/local/lib/librrd* /usr/lib/

3、安装Python-rrdtool

pip install psutil

pip install rrdtoo

# 注意:手动编译安装的是CentOS的rrdtool包,而不是Python-rrdtool这个第三方库。当然,你也可以手动编译安装Python-rrdtool,下载链接是Python的官网。

#如有不足之处,敬请各位大神批评指正!

你可能感兴趣的:(运维,python,rrdtool,CentOS)