Re: Building For OS 10.1, 10.2, and 10.3
Re: Building For OS 10.1, 10.2, and 10.3
- Subject: Re: Building For OS 10.1, 10.2, and 10.3
- From: Erez Anzel <email@hidden>
- Date: Fri, 2 Jan 2004 23:41:18 -0500
Ah, cross-development. I also had trouble with this, and I believe I am
doing it correctly now. (I'm using XCode 1.1 on Mac OS X 10.3.2.) I
don't know what you've done so far, so some (or all) of this may be
redundant (or even incorrect; no guarantees). You may want to require
10.2 as the minimum version of Mac OS X; that's what I do. One reason
that I do it is that 10.2 supports a more intelligent means of saving
to file, which 10.1 does not support. I think it may also make life
easier for you as a developer.
You have to specify which SDK to use and which version of the OS X your
software will be run on. I set both to the 10.2 family so that my
software will be fully functional and consistent on 10.2 and higher; I
am not adding any functionality with is exclusive to 10.3.
Here's what I suggest:
* Read the cross-development documentation, as well as the "XCode 1.1
full-install..." posting which just appeared on the xcode-users list.
* If you haven't already done so, install the 10.2.8 SDK; it comes on
the XCode 1.1 CD. I had installed the 10.2.7 SDK which came with the
XCode 1.1 update, but found out the hard way that it was missing the
OpenGL library (and possibly other items). I downloaded both the update
and the CD from Apple's web site (600 MB; good thing I have a
high-speed connection and can do it at night).
* Select your project (not the target) in the Groups & Files pane on
the left side of your project's window, and choose Get Info from the
Project menu.
* Click on the General tab at the top. In the General pane, find the
item marked "Cross-Develop Using Target SDK:" In the popup to its
right, select MacOSX10.2.8. You can close the info window.
* Select your target (not the project) in the Groups & Files pane on
the left side of your project's window, and choose Get Info from the
Project menu. (I believe that the project must be a native build
target, not a Jam-based target as would be the case with Project
Builder (PB) projects. If you had originally created the project in PB,
then you would have to upgrade the target by selecting it and choosing
"Upgrade "MyProject" to Native Target" from the Project menu. This
upgrade didn't seem to work for me the first time, but I quit and
started over again and was successful the second time through.)
* Click on the Build tab at the top. In the Build pane, find the item
on the left named "Mac OS X Deployment Target." On the right there is a
popup from which you should choose Mac OS X 10.2. You can close the
info window.
* While your target is still selected in the Groups & Files pane, clean
your target by choosing Clean from the Project menu.
I believe that you have to link to the 10.2.8 SDK frameworks by doing
the following. (I'd be happy to be corrected on this if I am wrong.)
* In the Groups & Files pane, click on the triangle to the left of your
project name to display its contents. Various folders should appear,
such as Classes, Resources, and Frameworks. Inside the Frameworks
folder you'll see (in my case, at least) two other folders: Linked
Frameworks and Other Frameworks. Inside of the first I had
Cocoa.framework and OpenGL.framework; inside of the second I had
Foundation.framework and AppKit.framework.
* Record for yourself which frameworks you have, then delete them all.
* Find the appropriate frameworks from
Developer/SDKs/MacOSX10.2.8.sdk/System/Library/Frameworks. Drag each
folder into the appropriate group in your Groups & Files pane to
replace what you had removed. A dialog will appear; the defaults worked
for me (DON'T copy items into destination group's folder; Recursively
create groups; add to only the target(s) which need(s) the framework).
* If you use StuffIt Deluxe 8.0.2 to stuff the resulting application,
do so in .sitx format, not .sit format. The .sit approach mucks with
the Unix permissions. I had this problem; some people couldn't run my
software. The better solution appears to be to use Apple's Disk Utility
to create a disk image. This is free, and is standard in Mac OS X; it
is also possibly more convenient for the end user.
DFMIL (Don't Follow Me, I'm Lost)
Bye...Erez
--
Erez Anzel
COMPUneering Inc., 113 McCabe Crescent, Thornhill ON L4J 2S6 CANADA
Tel.: 905-738-4601; fax: 905-738-5207; email@hidden;
www.compuneering.com
On 2-Jan-04, at 8:43 PM, Craig Bakalian wrote:
Hi,
I have read the help files on this topic, yet I am still confused.
If I build a version of my application as 10.3 on my machine which is
running 10.3.2, will it run on someone else's machine who is has 10.2?
I have had emails from users of my applications that are claiming
that "it won't run on my G4", and it won't run on my 10.3.2, where I
have users that are running my applications fine. What is going on?
What about backward compatibility, forward compatibility... micro
processor compatibility...
Craig Bakalian
www.eThinkingCap.com
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.