2014-01-26 104 views
4

我試圖從紅帽企業Linux服務器運行git可樂6.5版和接收:Python 2.6中導入錯誤:沒有模塊名爲argparse

Traceback (most recent call last): 
File "....../bin/git-cola", line 24, in <module> 
from argparse import ArgumentParser 
ImportError: No module named argparse 

我想我都需要的軟件包安裝:

* git-1.7.1-3.el6_4.1.x86_64 
* python-2.6.6-51.el6.x86_64 
* PyQt4.x86_64 0:4.6.2-9.el6 
* /usr/lib/python2.6/site-packages/argparse-1.2.1-py2.6.egg 

我在其他博客中讀到,Python 2.6可能存在問題,可能需要移至2.7。

附加信息 - @iljau注意到argparse位於32位lib中,而其餘的python位於64位。我原本以爲:

easy_install argparse 

本來已經整理出來並安裝了64位版本。

附加問題:有誰知道如何安裝64位版本的argparse。通過搜索互聯網對我來說並不明顯。我會繼續尋找。

我安裝argparse通過下載tar文件和

python setup.py install 

但是,它仍然是安裝在lib而不是lib64的路徑 - 它看起來像一個64位的安裝。因此,在正確引用argparse時,其他問題一定是問題所在。我不知道Python足以進行調試,但我懷疑git-cola需要Python 2.6的一些工作。

+0

我已經在python2.6上安裝了'argparse'很多次了。這是一個純Python模塊,不應該有任何真正的問題。你是如何安裝它的? – mgilson

+4

作爲一個完整的檢查,你能夠從'site-packges'中'輸入'任何其他模塊嗎? – chrisaycock

+1

'>>> import sys,pprint; pprint.pprint(sys.path)'看看你是否有路徑site-packages那裏... – recognosco

回答

5

作爲一個簡單的解決方案將argparse.pyhttps://code.google.com/p/argparse/source/browse/argparse.py複製到您的項目文件夾。


事實上,對於Python 2.6而言,​​需要單獨安裝。

來源:https://pypi.python.org/pypi/argparse

As of Python >= 2.7 .. the argparse module is maintained within the Python standard library. For users who still need to support Python < 2.7 .. it is also provided as a separate package, which .. also supports older Python versions.

但你安裝​​後,也可以拒絕爲某些神祕的原因工作。

有關其他調試技巧,請參閱問題"ImportError: No module named argparse"的答案和評論。

+0

根據問題,他已經安裝了backport。在他所需的軟件包列表中注意「/usr/lib/python2.6/site-packages/argparse-1.2.1-py2.6.egg」。 – abarnert

+0

本地保存副本對我有用,謝謝! – S200

+0

//,這也適用於我。確保argparse.py擁有合適的所有者,並將其設置爲可執行文件。請查看@ user3236698的答案以瞭解更多信息。 –

1

新的軟件包分別安裝在路徑:

/usr/lib/python2.6/site-packages 

使用sudo安裝他們離開了新安裝的目錄和所有文件不可讀。遞歸chmod命令打開所有已安裝的路徑,可讀性都解決了這個問題:

chmod -R u+rwX,go+rX,go-w <new directories and files> 
5

我對RHEL6同樣的問題和解決方案是安裝包的python-argparse.noarch

yum install python-argparse.noarch 

然後一切都很好。

0

看起來像argparse丟失。

yum install python-argparse 
相關問題