I wanted to package a command line application and a GUI wizard that calls 
it as two separate --onedir executables.

The command line application uses numpy, and the --onedir application works 
as expected. The packaged application runs and produces the expected 
results.

The GUI wizard uses wxPython. and calls the command line application using 
subprocess.Popen() rather than importing it as a module and running it in 
the same address space.

The packaged GUI wizard runs, and allows access to the help system, but is 
unable to run the packaged command line application.

What I get are "Unable to import multiarray" errors, and I know that there 
have been several discussions about the subject, but I believe they are not 
appropriate here.

If I change to use --onedir, I can see that the relevant 
numpy.core.multiarray.pyd appears in the command/dist/command directory, 
and indeed the application runs correctly.

I believe that the run-time environment in the packaged GUI is inherited by 
the packaged command line application so it doesn't re-initialize its 
environment and therefore can't find the modules that it needs, but which 
the GUI doesn't know anything about.

Therefore I have been trying to use MERGE as shown in 
buildtests/multipackage to copy the dependencies from the command line 
application into the GUI so that they end up in GUI/dist/GUI

So far I have not had any success. Is this the right approach?

D.

-- 
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/pyinstaller.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to