What is the best approach with compiling PySide application

杀马特。学长 韩版系。学妹 提交于 2020-01-01 03:39:06

问题


I have lot of pain while compiling pyside code for Linux...much less for Windows, and my source is around 300kb. I would like to know what is the safest way to compile it.

  1. Is it the best to compile Qt, PySide bindings, Python 2.7, and every import with separate process?

1.1. If I do it this way, is it easier to trace errors?

  1. Does qt4-qmake have any reason to use it while compiling?

  2. Is it better to rewrite code for PyQt instead of Pyside?

  3. Are it depending about happy combination of some versions, for instance: ( Qt v4.8.2, pyside 1.0.1, python 2.7.3 ) ?

EDIT: By compiling mean to convert Python scripts into executable Windows/Linux programs, as py2exe, cx_Freeze or PyInstaller do.

I appreciate your suggestions.


回答1:


My only experience is with cx_freeze (using python 3.3). It works in Windows/Linux/OSX. A simple example can be found here (with its documentation): http://cx-freeze.readthedocs.org/en/latest/distutils.html#distutils

Another example:

from cx_Freeze import setup, Executable

# dependencies
build_exe_options = {
    "packages": ["os", "sys", "glob", "simplejson", "re", "atexit", "PySide.QtCore", "PySide.QtGui", "PySide.QtXml"],
    "include_files": [("./example/Ui/MainWindow.ui", "Ui/MainWindow.ui"),
                      ("./example/Ui/ExampleWidget.ui", "Ui/ExampleWidget.ui"),
                      ("./example/Ui/TestDialog.ui", "Ui/TestDialog.ui"),
                      ("./example/Resources/style.qss", "Ui/style.qss")], # this isn't necessary after all
    "excludes": ["Tkinter", "Tkconstants", "tcl"],
    "build_exe": "build",
    "icon": "./example/Resources/Icons/monitor.ico"
}

executable = [
    Executable("./bin/Example.py",
               base="Win32GUI",
               targetName="Example.exe",
               targetDir="build",
               copyDependentFiles=True)
]

setup(
    name="Example",
    version="0.1",
    description="Example", # Using the word "test" makes the exe to invoke the UAC in win7. WTH?
    author="Me",
    options={"build_exe": build_exe_options},
    executables=executable,
    requires=['PySide', 'cx_Freeze', 'simplejson']
)



回答2:


Follow the instructions given on the PySide page on PyPI.



来源:https://stackoverflow.com/questions/18397994/what-is-the-best-approach-with-compiling-pyside-application

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!