2010-12-09 59 views
0

我以前在我的Windows XP機器上安裝了PyQt4,併成功地讓所有東西都能運行。今天晚上,我下載了完整的Qt4 SDK(開源版本)並安裝了它。在將bin目錄的路徑添加到我的系統環境路徑後,我能夠構建一些我用C++編寫的小程序。在不改變我的環境的情況下,我啓動了python並試圖導入PyQt4.QtCore,並得到一個錯誤,它無法加載DLL。我從我的環境路徑中刪除了Qt4 SDK bin目錄的路徑,現在可以運行我的python PyQt4程序,但我不能再構建我的C++程序。PyQt4和Qt4/C++可以在Windows上和平共處嗎?

首先,我不確定爲什麼C++ SDK的存在會影響Python版本,因爲它們位於不同的目錄中。我認爲問題在於,當python嘗試加載PyQt4 DLL時,它認爲它使用python路徑中的可執行文件,但由於SDK路徑是第一個,所以實際調用的是(不兼容)版本。

有沒有辦法讓這兩個環境可以彼此和平離開,這樣我就可以建立並運行任一類型的程序?

回答

0

正如你正確的建議,問題往往是各種DLL(QtCore4.dll,QtGui4.dll等)的版本不同。我傾向於發現問題出現在期望更新版本的人身上(所以如果Qt SDK安裝在第二位,但是PyQt4首先位於路徑中,那麼Qt SDK會抱怨),但聽起來好像你已經得到了一個不同的問題。

有跡象表明,我發現這兩個解決方案:

  • 更改路徑不同體型/運行環境(不是很好)。

  • 確保PyQt4和Qt/C++都處於相同的Qt版本,這樣任何一個DLL都可以工作(通常更容易)。

因爲我已經開始在電腦上同時安裝PyQt4的和Qt/C++,當我第一次開始使用它(因此他們在相當於發行版本),我很少有過任何問題與他們共存。

+0

就是這樣。我最終下載了Qt4,並使用它的庫和工具構建了PyQt4。現在大家都很開心。 – sizzzzlerz 2010-12-10 19:43:22

相關問題