/usr/lib (and /System/Library/Frameworks) is already excluded in bindepend.py since r693, which is imho the right approach since Mac ABI is stable (or atleast seems stable enough).

The problem we have here is with MacPorts. Basically MacPorts (which installs everything in /opt/local) will always install its own libs even if they are already installed in the system (/usr/lib). It's a 'Unix within a Unix' so to speak, everything MacPorts installs will have all its dependencies satisfied by MacPorts itself, circumventing any system libs. So, if we need/want to support MacPorts we must include all dependencies from MacPorts. It seems in the original bug report, libcups was not bundled from /opt/local, thus causing the error. Like Giovanni said, to add it to PyQt4's hidden imports should be sufficient.

Am 01.08.2011 13:39, schrieb Martin Zibricky:
Giovanni Bajo píše v Po 01. 08. 2011 v 12:32 +0200:
By adding libcups as a hidden import, you're effectively bundling both
of them, at the same (compatible) version. Thanks to DYLD_IMPORT_PATH,
both will be loaded from the executable (mac bundle), and there will
be
no conflict whatsoever.

I'm not sure I understand you.

The problem is: We have 2 files (libiconv.2.dylib) with the same name
but incompatible api. Some dylibs' require libiconv.2.dylib_A and some
libiconv.2.dylib_B.

How can we bundle libiconv_A and libiconv_B with frozen app under the
same name (libiconv.2.dylib) and ensure that some dylibs would load
libiconv_A and some libiconv_B?

Otherwise, we need to exclude both, so that they will always be loaded
from system's /usr/lib. I don't know if /usr/lib libraries on Mac have
a
guaranteed stable APIs. If someone can confirm this, I'm happy to add
the whole /usr/lib under bindepend.py's exclude list. Otherwise, we're
better off always bundling them.

I'm not sure about the /usr/lib API stability. But on mac pyside
libraries are put to /usr/lib. So there has to be workaround how to
bundle libs from /usr/lib if defined in an import hook.


Could you please try implement one possible solution (include or exclude
files) in svn or create a patch so I could test that?


Regards
--
Florian Höch

--
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pyinstaller?hl=en.

Reply via email to