2014-03-02 79 views
1

我的操作系統是archlinux.I安裝guake一個月,它的工作原理well.But今天無法啓動,並且錯誤是:爲什麼通過python2運行guake,但在錯誤中有'python3'?

[[email protected] ~]$ python2 /usr/bin/guake 
Traceback (most recent call last): 
    File "/usr/bin/guake", line 34, in <module> 
    import dbus 
    File "/usr/lib/python3.3/site-packages/dbus/__init__.py", line 82, in <module> 
    import dbus.types as types 
    File "/usr/lib/python3.3/site-packages/dbus/types.py", line 6, in <module> 
    from _dbus_bindings import (
ImportError: /usr/lib/python3.3/site-packages/_dbus_bindings.so: undefined symbol: PyBytes_Type 

我怎樣才能解決呢?

+0

如果啓動Python 2,sys.path的內容是什麼?我懷疑它已經搞亂了,並找到Python 3庫。 – Blckknght

+0

你說得對。如何解決? – user3369980

+0

從路徑中移除Python3的東西或刪除將它們放入路徑中的東西。 – User

回答

0

我發現PYTHONPATH設置爲

/usr/lib/python3.3/site-packages in /etc/profile 

評論,這將解決這個問題。

0

我認爲你的python2符號鏈接是指向python3。 嘗試使用which python2來檢查它。如果它顯示python3,並且您的python3符號鏈接也是python3的字體,那麼您可能需要重新安裝python2。

0

要添加到其他的答案,定義PYTHONPATH這樣的:

> PYTHONPATH="..." python2 /usr/bin/guake 

在這種情況下,你只能改變路徑,此執行。

也可以在命令行中使用env來檢查當前的PYTHONPATH值。

> env | grep PYTHONPATH 
相關問題