[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