I have a module/package structure which is somewhat special, I have 
multiple user made libraries which I keep in separate repositories, and 
they have fairly generic names like db, io, utils and so on. To avoid 
conflict with other packages I have a top level package named acme, i.e. my 
packages are acme.io, acme.db, acme.utils and so on. To make this work, the 
\__init__.py in all the acme folders has the following lines
 
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)

This works well when running the software which uses these packages from 
python.

But then I try making an EXE using pyinstaller. pyinstaller finds only one 
of these packages. I tried to set the pathex to the folder where each of 
these libraries reside:

a = Analysis(['.\\src\\myPgogram.py'],
             pathex=['C:\\Data\\python\\myProgram', 
'C:\\Data\python\\dbrepo', 'C:\\Data\\python\\utilsrepo', 
'C:\\Data\\python\\iorepo'],
             hiddenimports=['acme', 'acme.io', 'acme.utils', 'acme.db'],
             hookspath=None,
             runtime_hooks=None)


In the folders dbrepo, iorepo and utilsrepo there is a folder named acme, 
with the above mentioned \__init__.py file and the the corresponding 
package, i.e. db, utils and io, with a \__init__.py file within them again.

But pyinstaller only finds the acme and acme.db package. Or it finds only 
the package which path is listed first in the pathex variable.

Any hints to how I can make this work? Tried making hooks, but they are 
never called...

Thanks

-- 
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/d/optout.

Reply via email to