国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

解決centos中"ImportError: No module named

2017-01-02 22:06:00 12137

用Metasploit的時(shí)候出現(xiàn)了"ImportError: No module named _tkinter"的錯(cuò)誤,_tkinter是被Tkinter模塊引用的,因?yàn)閷?duì)Tkinter不太熟悉所以也不知道為什么會(huì)有這個(gè)錯(cuò)誤。 
我本身是在centos中,而且系統(tǒng)中存在不同的賬號(hào)分別使用了不同版本的Python,所以我先在root賬號(hào)下試了一下import Tkinter是OK的,接著用命令import _tkinter;_tkinter;打印了一下_tkinter的文件路徑,發(fā)現(xiàn)是在”/usr/lib64/python2.7/lib-dynload/”目錄下面,而且是so文件。 
首先我想到直接把root下面的_tkinter.so直接拷貝到xxuser賬號(hào)的Python lib-dynload中,但是我發(fā)現(xiàn)會(huì)有undefined symbol: PyUnicodeUCS4_AsUTF8String的錯(cuò)誤,也就是因?yàn)閞oot、xxuser兩者之間的Python編譯參數(shù)不同導(dǎo)致的,看來(lái)這種方式是不可行了。 
接著網(wǎng)上找了一圈沒有發(fā)現(xiàn)能直接安裝_tkinter的命令,后來(lái)我想到這個(gè)_tkinter.so是不是在編譯Python的時(shí)候生成的呢?所以我下載了一個(gè)跟xxuser當(dāng)前Python版本一致的Python源碼,編譯的時(shí)候選擇--enable-unicode=ucs2,重新./configure、make以后在build/lib.linux-x86_64-2.7目錄下面確實(shí)生成了_tkinter.so,然后把_tkinter.so拷貝到xxuser賬號(hào)的Python lib-dynload中,運(yùn)行import Tkinter就OK了。

提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: