I have successfully used PyInstaller running Wine to create an executable that runs on Windows. Set up your Wine environment on Linux by putting a copy of PyInstaller in the appropriate location. for example drive_c\pyinstaller-2.0.
Also install Python for Windows in the Wine environment. You must use the parameter msiexecto start the Python installer.
wine msiexec /i python-2.6.6.msi
You may also need to install other dependencies, such as pywin32.
Then just run PyInstaller in your spec file:
wine c:/Python26/Python.exe c:/pyinstaller-2.0/pyinstaller.py <spec_file>
, . exe , NSIS, . , NSIS Wine Linux, .