Budowanie binarnych paczek aplikacji PyQt4 pod MS Windows
14 January 2009
Comments
Gotowe aplikacje oparte o PyQt4 dla MS Windows łatwo można zbudować za pomocą py2exe, choć czasami trzeba odpowiednio zbudować, przygotować paczkę. Najprostszy setup.py dla aplikacji PyQt4 wygląda tak:
from distutils.core import setup
import py2exe
setup(windows=[{"script" : "naszplik.py"}], options={"py2exe" : {"includes" : ["sip", ]}})
python setup.py py2exe
Co powinno zbudować binarny "pakiet". Czasami mogą pojawić się problemy z brakującymi DLL - można je pobrać z internetu. Stosując Pythona 2.6 i PyQt4 dla niego możemy potrzebować (i użytkownicy aplikacji) pakietu Microsoft Visual C++ 2008 Redistributable Package - do pobrania bez problemu ze strony Microsoftu (jego brak objawia się tym iż Windows "nie może uruchomić aplikacji z powodu błędnej konfiguracji...").
Dodawanie brakujących modułów PyQt4 - QWebView
W niektórych przypadkach, np. dla QWebView (qt-webkit) py2exe nie dołączy wymaganego modułu QtNetwork - co objawi się wyjątkiem podczas uruchamiania binarnej aplikacji. Rozwiązanie to dołączenie tego modułu do setup.py:from distutils.core import setup
import py2exe
setup(windows=[{"script" : "run.py"}], options={"py2exe" : {"includes" : ["sip", "PyQt4.QtNetwork"]}})
Brak obsługi niektórych grafik w binarnych pakietach
Czasami pojawia się problem braku "obsługi" niektórych formatów plików graficznych w binarnych paczkach. Rozwiązanie to stworzenie w katalogu binarnej paczki katalogu imageformats, do którego kopiujemy pliki DLL wtyczek Qt dla tych formatów grafik (z instalacji PyQt4). Przykładowa lokacja to: C:\Python26\Lib\site-packages\PyQt4\plugins\imageformats\.
RkBlog
Comment article