Feeds

Go native with iPhone development

Baby steps

The Power of One Infographic

Chances are that when the official SDK is released it will need a reasonably virginal xCode setup to work with and I didn't want to mess up my existing system, which I use for regular Mac development. Conveniently, I use VMWare Fusion to run Windows XP under Leopard. It's dead easy to set up - a set of instructions can be found here.

You'll also need the xCode 2.5 Developer Tools disk to extract a file called Archive.pax.gz. This contains important Apple header files that will form part of the toolchain.

It is possible to "get at" this file from Windows, but it's much easier with a Mac. You mount the DMG, go to the \Packages\Packages directory, and when you find MacOSX10.4.Universal.pkg, right-click and choose "Show Package Contents" to drill down further.

You'll also need to install the iPhone root file system as part of the toolchain. Again, this is explained in the weblink. It's easiest doing this via a wireless connection to iPhone where you've installed the sshd daemon.

Installation the iPhone

Assuming you've installed the Cygwin toolchain - or other preferred option - you're ready to try building an iPhone application. Here again, there are plenty of examples around to get you started. The simplest thing is to download the inevitably named "Hello World" project and try building it. An example can be found here.

The exact details will depend on the precise toolchain you're working with. Once you've built the application (in my case by typing "make" from the Cygwin prompt within the project directory) you should end up with a file called Hello that is the actual ARM executable.

If you know much about Mac programming - and you'll certainly need to know something, if you're getting into iPhone development - you'll appreciate that Mac applications are made of bundles. You can find more on this here.

For consistency, you should deploy your application as a bundle. Create a folder called Hello.app and move the executable inside. You'll also need to copy the Info.plist file into the folder. It's important that the CFBundleIdentifier field inside this file is set to the program name, in this case "Hello".

The Power of One eBook: Top reasons to choose HP BladeSystem

Next page: Wrapping It up

More from The Register

next story
Google Nest, ARM, Samsung pull out Thread to strangle ZigBee
But there's a flaw in Google's IP-based IoT system
Orange spent weekend spamming customers with TXTs
Zero, not infinity, is the Magic Number customers want
Want to beat Verizon's slow Netflix? Get a VPN
Exec finds stream speed climbs when smuggled out
US freemium mobile network eyes up Europe
FreedomPop touts 'free' calls, texts and data
'Two-speed internet' storm turns FCC.gov into zero-speed website
Deadline for comments on net neutrality shake-up extended to Friday
GoTenna: How does this 'magic' work?
An ideal product if you believe the Earth is flat
NBN Co execs: No FTTN product until 2015
Faster? Not yet. Cheaper? No data
prev story

Whitepapers

Reducing security risks from open source software
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Consolidation: The Foundation for IT Business Transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.
Application security programs and practises
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.