2013-05-15 66 views
0

我對命令行有點新手。我曾經在我的最後一臺MacBook上安裝了IPython(配置了所有依賴項),以便我可以點擊破折號中的圖標啓動iPython qtconsole(在終端外殼之外)。從命令行啓動IPython qtconsole(安裝完所有依賴項後)

現在,在我的新的MacBook Pro,安裝所有相同的文件和依賴關係後,我得到:

Jacobs-MacBook-Pro:~ Jacob$ ipython qtconsole 
Traceback (most recent call last): 
    File "/usr/local/bin/ipython", line 8, in <module> 
    load_entry_point('ipython==1.0.dev', 'console_scripts', 'ipython')() 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/frontend/terminal/ipapp.py", line 390, in launch_new_instance 
    app.initialize() 
    File "<string>", line 2, in initialize 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 84, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/frontend/terminal/ipapp.py", line 315, in initialize 
    super(TerminalIPythonApp, self).initialize(argv) 
    File "<string>", line 2, in initialize 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 84, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/core/application.py", line 323, in initialize 
    self.parse_command_line(argv) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/frontend/terminal/ipapp.py", line 310, in parse_command_line 
    return super(TerminalIPythonApp, self).parse_command_line(argv) 
    File "<string>", line 2, in parse_command_line 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 84, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 429, in parse_command_line 
    return self.initialize_subcommand(subc, subargv) 
    File "<string>", line 2, in initialize_subcommand 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 84, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/config/application.py", line 361, in initialize_subcommand 
    subapp = import_item(subapp) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/utils/importstring.py", line 40, in import_item 
    module = __import__(package,fromlist=[obj]) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/frontend/qt/console/qtconsoleapp.py", line 56, in <module> 
    from IPython.external.qt import QtCore, QtGui 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/external/qt.py", line 23, in <module> 
    QtCore, QtGui, QtSvg, QT_API = load_qt(api_opts) 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/external/qt_loaders.py", line 241, in load_qt 
    result = loaders[api]() 
    File "/Library/Python/2.7/site-packages/ipython-1.0.dev-py2.7.egg/IPython/external/qt_loaders.py", line 171, in import_pyqt4 
    from PyQt4 import QtGui, QtCore, QtSvg 
ImportError: dlopen(/Library/Python/2.7/site-packages/PyQt4/QtGui.so, 2): Library not loaded: /usr/local/lib/QtGui.framework/Versions/4/QtGui 
    Referenced from: /Library/Python/2.7/site-packages/PyQt4/QtGui.so 
    Reason: image not found 

,並再次作爲一個新手,我認爲問題的一部分可以依靠輸出,在這裏:

Jacobs-MacBook-Pro:~ Jacob$ brew install qt 
Warning: It appears you have MacPorts or Fink installed. 
Software installed with other package managers causes known problems for 
Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again. 
Warning: qt-4.8.4 already installed, it's just not linked 

在此先感謝您的任何提示。如果你需要我運行任何命令(查看更多輸出),請讓我知道!

+0

我有*從來沒有*有任何運氣得到python建立在Mac或Ubuntu的Qt綁定。一種選擇是嘗試使用預編譯Qt支持的python發行版,例如Enthought Canopy(https://www.enthought.com/products/canopy/)或Anaconda(https://store.continuum.io/cshop/anaconda /) –

+0

您是使用Apple預裝的Python 2.7,python.org的安裝程序,Homebrew軟件包還是其他軟件?你是否真的將MacPorts或Fink與Homebrew一起安裝?你是如何安裝Qt,PyQt(或PySide?)和ipython的?如果你有多個版本的任何東西(請記住,如果你安裝了_any_ Python,你就可以,因爲Apple已經給了你一個),你的'PATH'是什麼樣的? – abarnert

+0

@RobertMcGibbon:隨着OS X 10.8(沒有第三方安裝)附帶的Python 2.7.2,'brew install pyside'開箱即用。我也曾經用過Homebrew的Python。但不能與python.org,或除了這兩個之外的任何其他Python。 (我也一起使用了MacPorts的python/qt/pyqt4,沒有任何問題,多年來從10.4升級到了10.7,只有當你開始安裝多個Pythons時,他們都希望聲明一些/ usr/local,混淆......) – abarnert

回答

2

所以,你有多個Python安裝,並不確定你擁有哪一個。

你有自制軟件和MacPorts。

您的MacPorts已損壞,您不知道如何解決該問題。

解決這些問題可能並不那麼困難,但我認爲是時候清理石板並重新開始。


「易」的方式來做到這一點是要重新安裝操作系統,使用標準備份和遷移的東西來保存您的水族級應用,用戶偏好,文件等,但那是相當激烈的,並不應該是必要的。

手動清潔的事情了,第一:

  • Uninstall MacPorts
  • brew uninstall $(brew list)。這刪除了所有的自制軟件包。你可能只是unlink而不是uninstall,但你真的想在你的機器被清理後重建它們。
  • sudo rm -rf /Library/Python /Library/Frameworks/Python.framework /usr/local/share/python*。這消除了大多數第三方Python安裝。如果你不知道你是從哪裏來的,那真的是你能做的最好的。

看看/usr/local/bin中剩下的東西。各種各樣的東西最終可能會出現在這裏,從安裝了Apple Python的腳本到用於GUI應用程序(如TextMate,Aquamacs或GitHub)的命令行工具,以及SDL或Qt的二進制安裝附帶的工具,因此您可能不希望只是抹去整個事情 - 但你確實想看看它的全部。也請看/usr/local/lib/Library/Frameworks

您可能還需要編輯您的~/.profile等文件,撤消或安裝那些可能已經做出,如添加/opt/local/bin/Library/Frameworks/Python.framework/Versions/2.7/binPATH變化。有可能也是在/etc的變化,但這是不太可能的(和不太可能導致問題)。

現在運行brew doctor以確保Homebrew很開心,重新安裝所需的任何與Python無關的Homebrew包和二進制安裝程序,現在您已準備好安裝/配置python,PyQt4或PySide,iPython,等等妥善處理,每一次都快樂地生活(直到你明年購買一臺新電腦)。

+0

我要重建睡覺 - 但是,你真的把它簡單明瞭。我很欣賞它,因爲當我終於鼓起勇氣去努力的時候,它就不那麼麻煩了。謝謝。 –