[Pythonmac-SIG] PackageMaker and bdist_mpkg
Bob Ippolito
bob at redivi.com
Mon Mar 7 17:27:19 CET 2005
On Mar 7, 2005, at 11:20 AM, Bob Ippolito wrote:
>
> On Mar 7, 2005, at 11:02 AM, Charles Moad wrote:
>
>> I am trying to make a mpkg using PackageMaker that includes a
>> combination of frameworks wrapped as pkg's, and bdist_mpkg outputs.
>> Each of these pkg's work fine when installed separately, but die when
>> I try running the resulting mpkg. One machine gave me a horribly
>> long stack trace that I think amounted to a NULL pointer and another
>> said, "There was an error in the package (999)" (might not be exact).
>> Has anybody every been successful doing something similar?
>
> Nesting packages works fine if it's done by bdist_mpkg. I've never
> tried using PackageMaker on the outside, but I suspect either you did
> something wrong with PackageMaker, or PackageMaker has bugs. The
> mpkgs and pkgs that bdist_mpkg outputs are perfectly compliant with
> the specfiications.
>
> If you put together a minimal example that demonstrates the problem,
> I'll look at it.
Ok, I just put a minimal example together and it worked fine. It
appears you are using PackageMaker incorrectly. By default, it sets
its IFPkgFlagComponentDirectory to "..", which means that all of the
sub-packages must be siblings of the mpkg. If they are not there, you
will get an error 999. PackageMaker does not copy the sub-packages
anywhere, you have to do this on your own.
bdist_mpkg creates mpkgs that have an IFPkgFlagComponentDirectory of
"Packages", which means it looks *inside* the mpkg for the pkg files.
Perhaps you thought that PackageMaker also did this kind of
encapsulation by default?
-bob
More information about the Pythonmac-SIG
mailing list