简体   繁体   English

在Mac OS X El Capitan上安装python-rrdtool-1.4.7

[英]python-rrdtool-1.4.7 install on Mac OS X El Capitan

I want to use python to crud rrd ,but when I was pip install python-rrdtool . 我想使用python编写rrd ,但是当我pip install python-rrdtool The warning like this: 这样的警告:

➜  python-rrdtool-1.4.7  sudo python  setup.py install
Password:
running install
running build
running build_ext
running build_configure
building 'rrdtoolmodule' extension
cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -Irrdtool-1.4.7/src -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c rrdtool-1.4.7/bindings/python/rrdtoolmodule.c -o build/temp.macosx-10.11-intel-2.7/rrdtool-1.4.7/bindings/python/rrdtoolmodule.o
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:69:18: warning: implicit conversion loses integer precision: 'Py_ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    args_count = PyTuple_Size(args);
               ~ ^~~~~~~~~~~~~~~~~~
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:375:15: warning: implicit conversion loses integer precision: 'time_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    if ((ts = rrd_first(argc, argv)) == -1) {
            ~ ^~~~~~~~~~~~~~~~~~~~~
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:400:15: warning: implicit conversion loses integer precision: 'time_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    if ((ts = rrd_last(argc, argv)) == -1) {
            ~ ^~~~~~~~~~~~~~~~~~~~
3 warnings generated.
In file included from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:
In file included from /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:8:
/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/pyconfig.h:1062:9: warning: 'SIZEOF_TIME_T' macro redefined [-Wmacro-redefined]
#define SIZEOF_TIME_T 4
        ^
rrdtool-1.4.7/bindings/python/../../rrd_config.h:357:9: note: previous definition is here
#define SIZEOF_TIME_T 8
        ^
1 warning generated.
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. build/temp.macosx-10.11-intel-2.7/rrdtool-1.4.7/bindings/python/rrdtoolmodule.o -Lrrdtool-1.4.7/src/.libs -lrrd -o build/lib.macosx-10.11-intel-2.7/rrdtoolmodule.so
ld: warning: directory not found for option '-Lrrdtool-1.4.7/src/.libs'
ld: library not found for -lrrd
clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: command 'cc' failed with exit status 1

I have tried many times,who can tell me? 我已经尝试了很多次,谁能告诉我?

I have resolved this problem ,with @Stephen Ingram suggestions. 我已经解决了这个问题,并提供了@Stephen Ingram的建议。

1.install rrdtool(with brew install rrdtool ) 1. brew install rrdtool (带brew install rrdtool

2.check cairo、pango 2.检查cairo、pango

3.run python setup.py install 3.运行python setup.py install

➜  python-rrdtool-1.4.7  sudo python setup.py install
running install
running build
running build_ext
running build_configure
building 'rrdtoolmodule' extension
cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -Irrdtool-1.4.7/src -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c rrdtool-1.4.7/bindings/python/rrdtoolmodule.c -o build/temp.macosx-10.11-intel-2.7/rrdtool-1.4.7/bindings/python/rrdtoolmodule.o
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:69:18: warning: implicit conversion loses integer precision: 'Py_ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    args_count = PyTuple_Size(args);
               ~ ^~~~~~~~~~~~~~~~~~
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:375:15: warning: implicit conversion loses integer precision: 'time_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    if ((ts = rrd_first(argc, argv)) == -1) {
            ~ ^~~~~~~~~~~~~~~~~~~~~
rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:400:15: warning: implicit conversion loses integer precision: 'time_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
    if ((ts = rrd_last(argc, argv)) == -1) {
            ~ ^~~~~~~~~~~~~~~~~~~~
3 warnings generated.
In file included from rrdtool-1.4.7/bindings/python/rrdtoolmodule.c:44:
In file included from /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h:8:
/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/pyconfig.h:1062:9: warning: 'SIZEOF_TIME_T' macro redefined [-Wmacro-redefined]
#define SIZEOF_TIME_T 4
        ^
rrdtool-1.4.7/bindings/python/../../rrd_config.h:357:9: note: previous definition is here
#define SIZEOF_TIME_T 8
        ^
1 warning generated.
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F. build/temp.macosx-10.11-intel-2.7/rrdtool-1.4.7/bindings/python/rrdtoolmodule.o -Lrrdtool-1.4.7/src/.libs -lrrd -o build/lib.macosx-10.11-intel-2.7/rrdtoolmodule.so
ld: warning: directory not found for option '-Lrrdtool-1.4.7/src/.libs'
ld: warning: directory not found for option '-Lrrdtool-1.4.7/src/.libs'
ld: warning: ignoring file /usr/local/lib/librrd.dylib, file was built for x86_64 which is not the architecture being linked (i386): /usr/local/lib/librrd.dylib
running install_lib
copying build/lib.macosx-10.11-intel-2.7/rrdtoolmodule.so -> /Library/Python/2.7/site-packages
running install_egg_info
Writing /Library/Python/2.7/site-packages/python_rrdtool-1.4.7-py2.7.egg-info

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM