[darwinbuild-dev] Missing Availability.h with 9G55

Craig Setera craigjunk at setera.org
Tue Apr 28 19:14:08 PDT 2009

First, let me thank you for helping out so much as I try to make this  
work.  The fact that I'm trying to do this "for fun" probably tells  
you a bit about how geeky I really am.  It appears that I'm down to a  
single remaining error:

Mig /SourceCache/ppp/ppp-314.0.1/Controller/pppcontroller.defs
     mkdir "/private/var/tmp/ppp/ppp-314.0.1.obj/ppp.build/pppd  
     cd /SourceCache/ppp/ppp-314.0.1
     /XCD/loper/usr/bin/mig -header "/private/var/tmp/ppp/ 
ppp-314.0.1.obj/ppp.build/pppd (Tool).build/DerivedSources/ 
pppcontroller.h" -user "/private/var/tmp/ppp/ppp-314.0.1.obj/ppp.build/ 
pppd (Tool).build/DerivedSources/pppcontrollerUser.c" -sheader /dev/ 
null -server /dev/null -I/private/var/tmp/ppp/ppp-314.0.1.sym/ 
BuiltProducts/include -I../../Family -I/private/var/tmp/ppp/ 
ppp-314.0.1.root/usr/include /SourceCache/ppp/ppp-314.0.1/Controller/ 
dyld: Library not loaded: /System/Library/Frameworks/ 
   Referenced from: /System/Library/Frameworks/Foundation.framework/ 
   Reason: image not found
cc: Invalid arch name : -D__MACH30__
mig: fatal: "<no name yet>", line -1: no SubSystem declaration
rmdir: /tmp/mig.C5pcvL: No such file or directory

Is this related to the architecture comment at the bottom of this  
email chain?  If so, can you give me some insight into how to go about  
altering things appropriately?

One of the interesting things is that this is definitely not part of  
an XCode target that I actually care to build.  It appears that the  
reason that "darwinbuild -target=pppd ppp" won't work is because the  
target is actually called "pppd (Tool)".  I've tried a number of  
combinations of quoting to try to pass that value through to  
xcodebuilder, but I keep getting things like:

private/var/tmp/ppp/build-ppp-314.0.1~20.sh: line 157: syntax error  
near unexpected token `('

I also tried invoking xcodebuilder directly, but I seem to not have  
things set up correctly when doing that, because I actually get *more*  
errors trying to do that.  Can you offer any ideas for next steps?

Thanks again

On Apr 28, 2009, at 1:55 PM, William Siegrist wrote:

> On Apr 28, 2009, at 11:40 AM, Craig Setera wrote:
>> I feel like I'm *so close* doing this via darwinbuild, but I'm  
>> still hitting problems. I will do some more digging on the  
>> troubleshooting page to see if I can resolve the issues I'm seeing  
>> now.  I tried to specify the target and it complained that that  
>> target didn't exist, so I'm not sure what is going on there.
>> It looks like some of this may be failing when trying to build for  
>> PPC.  I really only care about intel, so I'm not sure if there is  
>> an easy way to disable targeting PPC?
> You can use the following to edit the project data in your build  
> environment:
> $ darwinxref edit 9G55 ppp
> You want to enter:
> 	environment = {
> 		RC_ARCHS = i386;
> 	};
> ... and then save/quit.
> You can verify the archs are set with:
> $ darwinxref environment ppp
>> Mig /SourceCache/ppp/ppp-314.0.1/Controller/pppcontroller.defs
>>   mkdir "/private/var/tmp/ppp/ppp-314.0.1.obj/ppp.build/pppd  
>> (Tool).build/DerivedSources"
>>   cd /SourceCache/ppp/ppp-314.0.1
>>   /XCD/loper/usr/bin/mig -header "/private/var/tmp/ppp/ 
>> ppp-314.0.1.obj/ppp.build/pppd (Tool).build/DerivedSources/ 
>> pppcontroller.h" -user "/private/var/tmp/ppp/ppp-314.0.1.obj/ 
>> ppp.build/pppd (Tool).build/DerivedSources/pppcontrollerUser.c" - 
>> sheader /dev/null -server /dev/null -I/private/var/tmp/ppp/ 
>> ppp-314.0.1.sym/BuiltProducts/include -I../../Family -I/private/var/ 
>> tmp/ppp/ppp-314.0.1.root/usr/include /SourceCache/ppp/ppp-314.0.1/ 
>> Controller/pppcontroller.defs
>> dyld: Library not loaded: /System/Library/Frameworks/ 
>> Foundation.framework/Versions/C/Foundation
>> Referenced from: /usr/bin/arch
>> Reason: image not found
> This is a known problem of arch linking to Foundation. It looks like  
> you just need an arch that spits out "i386" or whatever, you can  
> replace it with a shell script that runs "uname -m".  Look for arch  
> under the BuildRoot directory and replace it with the script.
> -Bill

More information about the darwinbuild-dev mailing list