Building a Universal Binary

The place to discuss creating, porting and modifying Celestia's source code.
Topic author
BlindedByTheLight
Posts: 485
Joined: 19.03.2005
With us: 19 years 8 months
Location: Los Angeles, CA

Building a Universal Binary

Post #1by BlindedByTheLight » 18.05.2006, 04:39

Any one have any idea how to build a universal binary with Xcode for OS X? I know how to build on PPC...and figured it was just as simple as checking the "Build Universal" check-box... but that appears not to be the case. I can build an Intel version just fine...but I want to make my build (with all the OS X patches) available for PPC users, too.


Thanks.
Steven Binder, Mac OS X 10.4.10

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 19 years 9 months

Post #2by ElChristou » 18.05.2006, 11:36

Steven, only our Celestial Dirkpitt can answer your question... :wink:
Image

Avatar
dirkpitt
Developer
Posts: 674
Joined: 24.10.2004
With us: 20 years 1 month

Post #3by dirkpitt » 18.05.2006, 14:07

To compile a Universal build, you must be running the latest Xcode on Tiger 10.4+, and also have the Mac OS X 10.2.8 and 10.4 Universal SDK's installed (use the Xcode installer to install these if you haven't already).

In the xcodeproj, select Universal_Release as your active build configuration (from the toolbar, or Project > Set Active Build Configuration).
The build will take nearly twice as long on single core machines but this is normal.

Orac
Posts: 2
Joined: 09.11.2003
With us: 21 years
Location: Australia

Post #4by Orac » 19.05.2006, 05:43

In general, you can make any build configuration generate universal binaries by changing its 'architectures' settings. Double click a target to bring up its target info and go to the build tab. Select 'Release' in the configuration option (or whichever build configuration you want to change). From 'Collection' select 'Architectures' (under 'General'). You should now see an architectures setting. Double click on this and you should see check boxes that let you select 'PowerPC' and/or 'Intel'.

Of course, as dirkpitt says, you need the 10.4 sdk installed.

You can use the 'file' command from the Terminal to verify wether an application is a universal binary or not. You need to apply it to the exectuable in the app bundle, not the bundle itself as follows:

file myApplication.app/Contents/MacOS/myApplication

Startyger
Posts: 39
Joined: 05.05.2002
With us: 22 years 6 months
Location: Hillside, New Jersey

Glad to hear this is happening

Post #5by Startyger » 18.06.2006, 11:37

I've been using celestia onon my macs for a couple of years now 1.4.1 now (isn't there a 1.4.2?) I would love to still be able to use it when i upgrade to theh next Pro desktop version with a much better video card. i have a 466GHz with a 128MB card... slow but beaautiful... now a 1.25GHz mini with a 32MB card....... fast but.... not as beautiful. I don't want to upgrade to a consumer machine again.... yeesh that was stupidtz! lol I want my fast... but i want pretty too LOL! ok.. i'll be keeping an eye out.
"then He smiled at me...pa-rump-a-pum-pum..... me and my drum"


Return to “Development”