tout le monde,
Je cherche à tester cx_Freeze avec un script utilisant Qt Quick.
En m'appuyant sur l'exemple de Tyrtamos, voilà ce que j'ai fais :
le build se lance bien mais ... au moment de lancer l'exécutable le message d'erreur suivant apparaît :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 import sys, os from cx_Freeze import setup, Executable ############################################################################# # préparation des options # chemins de recherche des modules path = sys.path + ["admin"] # options d'inclusion/exclusion des modules includes = ["sip"] excludes = [] packages = [] # copier les fichiers et/ou répertoires et leur contenu includefiles = [("qml", "qml"), ("images", "images")] if sys.platform == "linux2": includefiles += [(r"/usr/lib/x86_64-linux-gnu/qt5/plugins/sqldrivers","sqldrivers")] elif sys.platform == "win32": includefiles += [(r"C:\Python27\Lib\site-packages\PyQt4\plugins\sqldrivers","sqldrivers")] else: pass # inclusion éventuelle de bibliothèques supplémentaires binpathincludes = [] if sys.platform == "linux2": # pour que les bibliothèques de /usr/lib soient copiées aussi binpathincludes += ["/usr/lib", "/usr/lib/python3/dist-packages/PyQt5/"] # construction du dictionnaire des options options = {"path": path, "includes": includes, "excludes": excludes, "packages": packages, "include_files": includefiles, "bin_path_includes": binpathincludes } ############################################################################# # préparation des cibles base = None if sys.platform == "win32": base = "Win32GUI" cible_1 = Executable( script = "main.py", base = base, compress = True, icon = None, ) ############################################################################# # création du setup setup( name = "TestExeQtQuikc", version = "1", description = "Test d'un exe avec QtQuick", author = "Jiyuu", options = {"build_exe": options}, executables = [cible_1] )
Zuuut... et pourquoi il me parle de QtNetwork ??? je ne l'utilise pas moi !!!!File "/usr/local/lib/python3.3/dist-packages/cx_Freeze-4.3.2-py3.3-linux-x86_64.egg/cx_Freeze/initscripts/Console3.py", line 27, in <module>
exec(code, m.__dict__)
File "main.py", line 7, in <module>
File "/usr/lib/python3.3/importlib/_bootstrap.py", line 1565, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.3/importlib/_bootstrap.py", line 1532, in _find_and_load_unlocked
loader.load_module(name)
File "ExtensionLoader_PyQt5_QtQml.py", line 22, in <module>
File "ExtensionLoader_PyQt5_QtQml.py", line 14, in __bootstrap__
File "/usr/lib/python3.3/importlib/_bootstrap.py", line 1565, in _find_and_load
return _find_and_load_unlocked(name, import_)
File "/usr/lib/python3.3/importlib/_bootstrap.py", line 1529, in _find_and_load_unlocked
raise exc
ImportError: No module named 'PyQt5.QtNetwork'
J'ai importé manuellement tout ce que je pouvais avoir en PyQt5.xxx.so histoire de tester, rie n'y fait à priori
Une idée de ce qui pourrait clocher ?
D'avance merci.
++
J
Partager