This post is for Xcode users who are experiencing problems when they connect there iPhones with OS 3.1 to Xcode and get an error in Organizer.
For a complete explanation of what is going on please read my earlier post on the same subject for iPhone OS 3.0.1.
Here is the quick and dirty version...
the error you'll see:
you see this in Organizer.
"OS Installed on iPhoneXYZ is
3.1 (7C144)
Xcode Supported iPhone OS Versions
3.0.1 (7A400)
3.0 (7A312g)
2.2.1
2.2
2.1.1
2.1
2.0.2 (5C1)
2.0.1 (5B108)
2.0 (5A347)"
the solution:
1) open a terminal window as administrator.
For a complete explanation of what is going on please read my earlier post on the same subject for iPhone OS 3.0.1.
Here is the quick and dirty version...
the error you'll see:
you see this in Organizer.
"OS Installed on iPhoneXYZ is
3.1 (7C144)
Xcode Supported iPhone OS Versions
3.0.1 (7A400)
3.0 (7A312g)
2.2.1
2.2
2.1.1
2.1
2.0.2 (5C1)
2.0.1 (5B108)
2.0 (5A347)"
the solution:
1) open a terminal window as administrator.
2) change to the directory in question to minimize errors when typing long paths in commands:
cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
3) once in the directory /DeviceSupport check for a
pre-existing link for 3.1
type ls -l to list the contents of /DeviceSupport.
if a link for 3.1 is present and you're still getting the error in
Xcode/Organizer then the 3.1 link was not correctly created and must be
removed and recreated.
example of incorrect 3.1 link:
lrwxr-xr-x 1 user admin date 5 11:27 3.1 -> 3.0
remove the incorrect link:
rm 3.1
ls -l to double check that you really removed 3.1.
4) now we need to create the link for the new OS 3.1 to
point back to the root OS 3.0 (7A341).
ln is the link command, so type:
ln -s 3.0\ \(7A341\) 3.1
after you hit return the command line prompt should show no message. simply list the directory contents onece more to ensure that we created the link properly. you should see the following entry in the directory listing when you enter ls -l:
lrwxr-xr-x 1 user admin date time 3.1 -> 3.0 (7A341)
5) restart Xcode and *BANG* your iPhone will appear as normal sans error and is
ready to install your provisioning apps.
more on how a "link" works within OSX can be found by typing man
ln at the command prompt.
hope that helps everyone, who like me, struggled with this one.
cd /Developer/Platforms/iPhoneOS.
3) once in the directory /DeviceSupport check for a
pre-existing link for 3.1
type ls -l to list the contents of /DeviceSupport.
if a link for 3.1 is present and you're still getting the error in
Xcode/Organizer then the 3.1 link was not correctly created and must be
removed and recreated.
example of incorrect 3.1 link:
lrwxr-xr-x 1 user admin date 5 11:27 3.1 -> 3.0
remove the incorrect link:
rm 3.1
ls -l to double check that you really removed 3.1.
4) now we need to create the link for the new OS 3.1 to
point back to the root OS 3.0 (7A341).
ln is the link command, so type:
ln -s 3.0\ \(7A341\) 3.1
after you hit return the command line prompt should show no message. simply list the directory contents onece more to ensure that we created the link properly. you should see the following entry in the directory listing when you enter ls -l:
lrwxr-xr-x 1 user admin date time 3.1 -> 3.0 (7A341)
5) restart Xcode and *BANG* your iPhone will appear as normal sans error and is
ready to install your provisioning apps.
more on how a "link" works within OSX can be found by typing man
ln at the command prompt.
hope that helps everyone, who like me, struggled with this one.
i just got 3.1.3 to work. here is the command. just use it in the above instructions instead of "ln -s 3.0\ \(7A341\) 3.1"
ln -s 3.1\ \(7C144\) 3.1.3
hope that helps,
Marcos