How can I create a directly-executable cross-platform GUI app using Python ?

How can I create a directly-executable cross-platform GUI app using Python ?

Asked on November 20, 2018 in tkinter.
Add Comment


  • 3 Answer(s)

    Here is the answer is:

        The First you will need some GUI library with Python bindings and then  some program that will convert your python scripts into standalone executables.

    The Cross-platform GUI libraries with Python bindings (Windows, Linux, Mac)

    Of course, there are many, but the most popular that I’ve seen in wild are:

    The Tkinter – based on Tk GUI toolkit (de-facto standard GUI library for python, free for commercial projects)

    WxPython – based on WxWidgets (popular, free for commercial projects)

    Qt using the PyQt bindings or Qt for Python. The former is not free for commercial projects. The latter is less mature, but can be used for free.

    Complete list is at http://wiki.python.org/moin/GuiProgramming

    Single executable (all platforms)

        PyInstaller – the most active.

        fbs – if you chose Qt above.

    Single executable (Windows).

       py2exe – used to be the most popula

    Single executable (Linux).

        Freeze – works the same way like py2exe but targets Linux platform.

    Single executable (Mac)

        py2app – again, works like py2exe but targets Mac OS.

     

    Answered on November 20, 2018.
    Add Comment

         Ther is a another system (not mentioned in the accepted answer yet) is PyInstaller, which worked for a PyQt project of mine when py2exe would not. I found it easier to use.

    http://www.pyinstaller.org/

    Answered on November 20, 2018.
    Add Comment

    Here is the solution is

         In an alternative tool to py2exe is bbfreeze  that  generates executables  in the  windows and linux. also It’s newer than py2exe and quite well. I found that  magically works better without configuration for a wide variety of applications.

    Answered on November 20, 2018.
    Add Comment


  • Your Answer

    By posting your answer, you agree to the privacy policy and terms of service.