472,780 Members | 1,164 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,780 software developers and data experts.

py2exe problem

First time trying to create an executable with py2exe. I have a small
program which makes use of python23 (2.3.5?), wxpython ('2.6.2.1'),
matplotlib ('0.83.2'), win32com (latest?), Numeric ('23.7') on Windows XP &
Win2000. The program runs without problem but as an exe it doesn't even get
to showing the GUI.

I get the following error log when I run the executable.

Traceback (most recent call last):
File "mpival3.py", line 1264, in ?
File "wx\_core.pyc", line 7668, in __init__
File "wx\_core.pyc", line 7320, in _BootstrapApp
File "mpival3.py", line 364, in OnInit
File "mpival3.py", line 79, in __init__
File "mpival3.py", line 204, in restore_inputs
File "mpival3.py", line 275, in setConfig
File "wx\_controls.pyc", line 621, in SetValue
TypeError: String or Unicode type required

Line 621 in wx\_controls.pyc refers to setting the value of a combobox at
the start up of my code. The initial values of various widgets (checkboxes,
textboxes and comboboxes) are stored in a pickled file which is read at the
program start. Running the program, not the exe, shows that the variables
are retrieved properly and of the correct type for the combobox.SetValue
method.

Furthermore, if I comment out the code to set the combobox value and
recreate the exe, then I get the same sort of error message for a different
(textbox) widget.

I've read all the py2exe WIKI entries, forum posts and Googled myself
senseless ... now I'm stuck. Can anyone shed any light on this problem, or
have some experience to share?

As an aside, I've found this a very frustrating process at this stage. Never
thought it would be so much trouble. Am I just dreaming in thinking I can
package up my program with this combination of modules?.
fwiw my py2exe setup.py file is included below. It's obviously a concoction
of includes, excludes and other options pieced together from hours of
browsing wiki's etc.

Thanks.

Chris

==================================

# setup.py
from distutils.core import setup
import py2exe
import sys

# If run without args, build executables, in quiet mode.
if len(sys.argv) == 1:
sys.argv.append("py2exe")
sys.argv.append("-q")
# Matplotlib
# We need to import the glob module to search for all files.
import glob
# We need to exclude matplotlib backends not being used by this executable.
You may find
# that you need different excludes to create a working executable with your
chosen backend.
# We also need to include matplotlib.numerix.random_array
options = {"py2exe": {
"includes": ["matplotlib.numerix.random_array",
"matplotlib.backends.backend_tkagg", "encodings",
"encodings.*"],
# "includes": ["matplotlib", "Numeric", "scipy",
"scipy_base"],
# "excludes": ["_gtkagg", "_tkagg"],
"packages": ["pytz"],
"dll_excludes": ['libgdk-win32-2.0-0.dll',
'libgobject-2.0-0.dll']
}
}

# Additional data files are required by matplotlib. Note that the glob.glob
routine
# doesn't seem to pick up the .matplotlib resource file, so I copy that
separately.
# Do the same if you need to
#datf = [(r'matplotlibdata', glob.glob(r'c:\python23\share\matplotlib\*')),
# (r'matplotlibdata',
[r'c:\python23\share\matplotlib\.matplotlibrc'])]
datf = [(r'matplotlibdata', glob.glob(r'c:\python23\share\matplotlib\*'))]
# for scipy
excludes = []
includes = ["scipy.special.__cvs_version__", "scipy.linalg.__cvs_version__",
"scipy.special.cephes"]
options["py2exe"]["includes"].extend(includes)

# other
#options["py2exe"]["compressed"] = 1
#options["py2exe"]["optimize"] = 2
#options["py2exe"]["ascii"] = 1
#options["py2exe"]["bundle_files"] = 3
#options["py2exe"]["skip_archive"] = 1

setup(
options = options,
data_files = datf,
name = 'validation',
description = 'Validation Program',
windows = ['mpival3.py']
)


Apr 15 '06 #1
4 3867
bwaha wrote:
First time trying to create an executable with py2exe. I have a small
program which makes use of python23 (2.3.5?), wxpython ('2.6.2.1'),
matplotlib ('0.83.2'), win32com (latest?), Numeric ('23.7') on Windows XP &
Win2000. The program runs without problem but as an exe it doesn't even get
to showing the GUI.


Do you have more than one wxwindows installed? Check you site-packages.
Do you follow documentation
http://wiki.wxpython.org/index.cgi/MultiVersionInstalls ? Seems like
py2exe picks wrong wxwindows. Insert printing of wx.VERSION and
wx.PlatformInfo and try to run it packaged and non-packaged.

Serge

Apr 15 '06 #2

"Serge Orlov" <Se*********@gmail.com> wrote in message
news:11**********************@g10g2000cwb.googlegr oups.com...
bwaha wrote:
First time trying to create an executable with py2exe. I have a small
program which makes use of python23 (2.3.5?), wxpython ('2.6.2.1'),
matplotlib ('0.83.2'), win32com (latest?), Numeric ('23.7') on Windows XP & Win2000. The program runs without problem but as an exe it doesn't even get to showing the GUI.


Do you have more than one wxwindows installed? Check you site-packages.
Do you follow documentation
http://wiki.wxpython.org/index.cgi/MultiVersionInstalls ? Seems like
py2exe picks wrong wxwindows. Insert printing of wx.VERSION and
wx.PlatformInfo and try to run it packaged and non-packaged.

Serge


Thanks for the suggestion, but I definitely have only one version installed.
In fact I uninstalled it and installed an earlier version (2.5.5.1) to see
if it was specifically wxPython related. No change.

Apr 16 '06 #3
bwaha wrote:
Thanks for the suggestion, but I definitely have only one version installed.
In fact I uninstalled it and installed an earlier version (2.5.5.1) to see
if it was specifically wxPython related. No change.


Then why don't you try to print what is passed to SetValue in the exe,
just change windows = ['mpival3.py'] in setup.py with console =
['mpival3.py'] and add prints.

Apr 16 '06 #4

"Serge Orlov" <Se*********@gmail.com> wrote in message
news:11**********************@g10g2000cwb.googlegr oups.com...
bwaha wrote:
Thanks for the suggestion, but I definitely have only one version installed. In fact I uninstalled it and installed an earlier version (2.5.5.1) to see if it was specifically wxPython related. No change.


Then why don't you try to print what is passed to SetValue in the exe,
just change windows = ['mpival3.py'] in setup.py with console =
['mpival3.py'] and add prints.


Thanks. Turned out to be user error. I was trying to SetValue(None).
Apr 17 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: RJS | last post by:
Hi all, I can't get a py2exe compiled app to run with numarray (numarray-0.5.win32- py2.2). Also wxPythonWIN32-2.3.3.1-Py22 and ActivePython-2.2.1-222. In the sample below, commenting out...
2
by: Stefan Behrens | last post by:
Hi, does anybody know how I can get py2exe to work with wxPython's wxCalendarCtrl? Currently, I have just a "standard" setup.py, and py2exe gives me a syntax error. Do I need to include any...
0
by: Kathleen Kudzma | last post by:
I'm having a problem with py2exe for Python 2.3. I got fixed the Lookuperror no codec search functions registered: can't find encoding by following the instructions on the py2exe page (added...
8
by: Kathleen Kudzma | last post by:
Does anyone know how to resolve the following problem that I'm getting in Python 2.2 and 2.3? PROBLEM: When I try to create a classReader object I get an exception: "SAXReaderNotAvailable: No...
5
by: Rene Olsthoorn | last post by:
Dear readers, py2exe has a problem including libxml2. Not at building time, but at runtime. The libxml2.dll cannot be loaded... Is there anyone that NOT has the problem? (and can you drop me...
6
by: Luc Saffre | last post by:
Hello, I had a strange problem when freezing (using either py2exe or McMillan installer) a script that imports reportlab (which imports PIL (which imports FixTk))). - Python 2.3.3c (also with...
2
by: Kylotan | last post by:
I need to be able to build Py2Exe from the source code as I am making a Windows executable where I wish to preprocess the modules before importing them.It looks like I can do this by adding lines...
5
by: Lad | last post by:
I try to make an exe file from my script with help of Py2exe but I am not successfull. I have my script start.py that has only one command ############### import rgs.py ############## ...
1
by: Dave Lim | last post by:
>On May 3, 1:29 pm, Dave Lim <diband... at yahoo.com> wrote: site:http://surguy.net/articles/speechrecognition.xml used out tried ? to protection aroundhttp://mail.yahoo.com I went and
3
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 2 August 2023 starting at 18:00 UK time (6PM UTC+1) and finishing at about 19:15 (7.15PM) The start time is equivalent to 19:00 (7PM) in Central...
0
linyimin
by: linyimin | last post by:
Spring Startup Analyzer generates an interactive Spring application startup report that lets you understand what contributes to the application startup time and helps to optimize it. Support for...
0
by: erikbower65 | last post by:
Here's a concise step-by-step guide for manually installing IntelliJ IDEA: 1. Download: Visit the official JetBrains website and download the IntelliJ IDEA Community or Ultimate edition based on...
0
by: Taofi | last post by:
I try to insert a new record but the error message says the number of query names and destination fields are not the same This are my field names ID, Budgeted, Actual, Status and Differences ...
14
DJRhino1175
by: DJRhino1175 | last post by:
When I run this code I get an error, its Run-time error# 424 Object required...This is my first attempt at doing something like this. I test the entire code and it worked until I added this - If...
0
by: Rina0 | last post by:
I am looking for a Python code to find the longest common subsequence of two strings. I found this blog post that describes the length of longest common subsequence problem and provides a solution in...
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
0
by: Mushico | last post by:
How to calculate date of retirement from date of birth
2
by: DJRhino | last post by:
Was curious if anyone else was having this same issue or not.... I was just Up/Down graded to windows 11 and now my access combo boxes are not acting right. With win 10 I could start typing...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.