About the author

Related Articles

4 Comments

  1. 1
    SparkAndShine@email.null'

    SparkAndShine

    As mentioned by other answerers, the cross-compilation feature is removed from PyInstaller since 1.5. Here, show how to package a Windows executable from Python scripts using PyInstaller under wine.

    Step 1: Install wine and Python

    sudo apt-get install wine
    wine msiexec /i python-2.7.10.msi /L*v log.txt
    

    PS: Newer Python versions already include pip (is used to install pyinstaller). Download Python installation package from here (e.g., python-2.7.10.msi)

    Step 2: Install PyInstaller on wine

    $ cd ~/.wine/drive_c/Python27
    $ wine python.exe Scripts/pip.exe install pyinstaller
    
    Successfully installed pyinstaller-3.1.1 pypiwin32-219
    

    Step 3: Package Python scripts

    Package Python scripts (e.g., HelloWorld.py) with pyinstaller.

    $ wine ~/.wine/drive_c/Python27/Scripts/pyinstaller.exe --onefile HelloWorld.py
    
    # filename: HelloWorld.py
    
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    print('Hello World!')
    

    The Windows executable file is located in dist/.

    $ wine dist/HelloWorld.exe 
    Hello World!
    fixme:msvcrt:__clean_type_info_names_internal (0x1e24e5b8) stub
    

    Refer to here for the detailed description.

    Reply
  2. 2
    luc@email.null'

    luc

    Did you look at PyInstaller?

    It seems that 1.4 support cross-compilation

    http://www.pyinstaller.org/browser/tags/1.4/doc/CHANGES.txt says:

    Add support for cross-compilation: PyInstaller is now able to build Windows executables when running under Linux. See documentation for more details.

    I didn’t try it myself.

    I hope it helps

    Reply
  3. 3
    Adam

    Adam Crossland

    You could run Windows in VirtualBox in order to run py2exe. VBox offers a powerful command-line client for automating tasks, so it something that you could likely integrate into your development process with ease.

    Reply
  4. 4
    Perkins@email.null'

    Perkins

    I have tested py2exe inside of wine, and it does function. You’ll need to install python in wine for it to work, or if you only use the standard libarary, you can bundle py2exe with py2exe from the windows machine and then use it in wine. Just keep in mind you need the same version of the ms visual C libraries in wine as were used to compile python or things won’t work properly.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Copyright © 2017 SolutionMmyself.com