我在 Debian 6.0 上运行 Python 2.6.6。 我执行
sudo pip install rrdtool
并收到以下错误。
/usr/include/python2.6/unicodeobject.h:477: note: expected ‘const char *’ but argument is of type ‘int’
error: command 'gcc' failed with exit status 1
----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/rrdtool/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-orC7So-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/rrdtool
Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.6', 'console_scripts', 'pip')()
File "/usr/local/lib/python2.6/dist-packages/pip/__init__.py", line 185, in main
return command.main(cmd_args)
File "/usr/local/lib/python2.6/dist-packages/pip/basecommand.py", line 161, in main
text = '\n'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 51: ordinal not in range(128)
有一个建议的解决方案
sudo apt-get install python-dev
,但似乎不起作用。
我在这里缺少什么?
我用 apt-get 代替 pip 解决了这个问题:
sudo apt-get install python-rrdtool
我安装了 python-rrdtool 包,但错误仍然存在。然后我又尝试了另外两个包rrdtool和librrd-dev,错误解决了。我的解决方案是:
sudo apt-get install rrdtool python-rrdtool librrd-dev
如果有人尝试在 Alpine 上安装 rrdtool,
apk add build-base rrdtool-dev
为我成功了。 (参见https://community.home-assistant.io/t/storing-your-very-long-history-rrd-recorder/222758/11)