Polipizio
Polipizio

Reputation: 44

Missing modules in py2exe

(First of all, sorry for my bad english, I'm not english).

Yesterday I've finished my little program. Today I've tried to compile that but appear that: prompt_image

This is the setup script:

from distutils.core import setup
import py2exe

setup(console=['my_program.py'])

How can I solve this problem?

Thank you!

Upvotes: 1

Views: 3677

Answers (2)

Busturdust
Busturdust

Reputation: 2485

Try explicitly passing a py2exe option to your setup.

I usually follow this general setup.py for a py2exe program.

from distutils.core import setup
import os
import shutil
import py2exe



data_files = []
setup(
    name='ApplicationName',
    console=['script_file.py'], # 'windows' means it's a GUI, 'console' It's a console program, 'service' a Windows' service, 'com_server' is for a COM server
    # You can add more and py2exe will compile them separately.
    options={ # This is the list of options each module has, for example py2exe, but for example, PyQt or django could also contain specific options
        'py2exe': {
            'packages': [],
            'dist_dir': 'dist', # The output folder
            'compressed': True, # If you want the program to be compressed to be as small as possible
            'includes': ['os', 'logging', 'yaml', 'sqlalchemy', 'pymysql'], # All the modules you need to be included, I added packages such as PySide and psutil but also custom ones like modules and utils inside it because py2exe guesses which modules are being used by the file we want to compile, but not the imports, so if you import something inside main.py which also imports something, it might break.
        }
    },

    data_files=data_files # Finally, pass the

)

Upvotes: 2

Gon
Gon

Reputation: 733

Please reinstall py2exe; maybe to a different version that supports Python 3.5

Upvotes: 0

Related Questions