skyeye启动显示ImportError:ctypes.so: undefined symbol: PyFloat_Type解决方案

skyeye启动,显示如下错误:

ImportError: /usr/lib/python2.7/lib-dynload/_ctypes.so: undefined symbol: PyFloat_Type

经过各种查找,下面的链接显示了跟我类似的问题:

http://www.vimer.cn/2010/12/cc%e4%b8%ad%e8%b0%83%e7%94%a8python%e8%84%9a%e6%9c%ac2-%e9%ab%98%e7%ba%a7%e5%ba%94%e7%94%a8.html

发现时python的问题,安装需要加参数--enable-shared,我的系统是mint13,python是系统安装时自动装的,所以只能自己编译了。

到官方下载2.7.3的包,解压

./configure --enable-shared

sudo make

sudo make install

make时我这里提示说:

INFO: Can't locate Tcl/Tk libs and/or headers
Python build finished, but the necessary bits to build these modules were not found:
_bsddb             _curses            _curses_panel
_sqlite3           _ssl               _tkinter
bsddb185           bz2                dbm
dl                 gdbm               imageop
readline           sunaudiodev        zlib
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
 

参考了:http://www.cnblogs.com/lexus/archive/2012/02/25.html

解决方法是找到tck-dev和tk-dev这个包,安装,apt里面就有。

至于下面的模块,只要安装libsqlite3-dev,libbz2-dev,openssl,ncurses,,libreadline6-dev,libgdbm-dev就好了,如果还是缺包的话,就按照上面那个参考文献里面的包自己装,完了之后会显示:

Python build finished, but the necessary bits to build these modules were not found:
_tkinter           bsddb185          sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
参考文献作者说不用装,我没装,直接编译安装python,测试了下skyeye,可以用了。

关于skyeye的文章,我个人觉得下面这个不错:

http://www.linuxidc.com/Linux/2012-10/71650.htm

你可能感兴趣的:(参数,python,undefined,symbol)