[Pythonmac-SIG] py2app build problems
William Kyngesburye
woklist at kyngchaos.com
Fri Aug 11 22:34:17 CEST 2006
I have a setup.py I generated from py2applet which I've expanded to
copy in all the shell scripts and binaries and support files needed
for an application (py2app is just for the app startup, the app is
all shell scripts and C binaries).
- I have dylib_excludes worked out so it doesn't pull in a bunch of
extra frameworks (3rd party stuff) that are expected to be installed
separately. One odd thing there, before I excluded them: a couple
frameworks are wrappers (umbrella framework) for a collection of unix
libraries or make use of a bunch of unix libraries, included in the
framework. py2app copied the whole framework, then duplicated the
included libraries needed by the framework in the top level of the
Frameworks folder, like (simplified):
Contents
Frameworks
Foo.framework
Libraries
libbar1.dylib
libbar2.dylib
Foo [uses libbar1 and libbar2]
libbar1.dylib [Foo's new relative @executable_path
libbar2.dylib linking uses these copies]
If I wanted to include the frameworks, it would be a mess.
- the dylib exclude option is not working for dylibs, just
frameworks. I've tried various forms: the full path as specified in
the install name, libfoo, libfoo.dylib, libfoo.version.dylib. It
still copies them.
- for libraries installed from the software, it's pulling in
installed copies (makes sense, since that's where the install name
has them). But these may be older than the ones I've just built for
the app package and haven't installed yet.
given the various issues with pulling in libraries and frameworks, an
exclude option that would be nice is to exclude all libraries/
frameworks, without having to figure out what they might be and
listing every one, a 'dylib_excludes: all' option. I would rather
install needed libraries manually anyways (as resources), and the
application sets DYLD_LIBRARY_PATH already so relative paths aren't
needed.
-----
William Kyngesburye <kyngchaos at kyngchaos.com>
http://www.kyngchaos.com/
"This is a question about the past, is it? ... How can I tell that
the past isn't a fiction designed to account for the discrepancy
between my immediate physical sensations and my state of mind?"
- The Ruler of the Universe
More information about the Pythonmac-SIG
mailing list