On Feb 28, 2006, at 1:17 AM, Bill Rector wrote:
I'm migrating a CW app to be xcode and universal.
I've moved the 5 static libs to xcode and the app on 10.2.4u ppc. It works!
I've built the 5 static libs to be universal ppc 10.3.9 and i386 10.2.4u
I've built the app using 10.2.4u for ppc & i386. It works.
First, I think you meant 10.4u for i386? :)
Now when I set
SDKROOT_ppc = /Developer/SDKs/MacOSX10.3.9.sdk
I get this link error
You also need the deployment settings set. Here is what I use in a configuration file:
ARCHS = ppc i386
SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk
SDKROOT_ppc = /Developer/SDKs/MacOSX10.3.9.sdk
MACOSX_DEPLOYMENT_TARGET_i386 = 10.4
MACOSX_DEPLOYMENT_TARGET_ppc = 10.3
That will get rid of your undefined symbols for 10.3.9.
/usr/bin/ld: Undefined symbols:
_sprintf$LDBLStub
_vsprintf$LDBLStub
_sscanf$LDBLStub
_strtold$LDBLStub
collect2: ld returned 1 exit status
I did a kext with the same universal settings and it succeeds. So what's the issue here?
It may not actually be completely built correctly. Once you try to use it, you may find issues.
On the successful build, I also get this link warning.
/usr/bin/ld: warning suggest use of -bind_at_load, as lazy binding may result in errors or different symbols being used
Is there a setting I'm missing? Is this related to above error?
I'm not sure, you may find what that means using a google search which I'm not going to do :)
Lastly, the app still uses a .rsrc file. No matter how I try to configure xcode, it copies the .rsrc file to bundle as empty; like it's skipping the resource fork. So each time, I have to hand copy the .rsrc file into the bundle. Is there a better way?
Are you using a Build ResourceManager Resources build phase to copy this over? For me, it just works...
Good luck!
Lyndsey