Skip to content

Instantly share code, notes, and snippets.

@rpetrich
Created May 17, 2010 10:02
Show Gist options
  • Save rpetrich/403608 to your computer and use it in GitHub Desktop.
Save rpetrich/403608 to your computer and use it in GitHub Desktop.
iPhone Toolchain installer script
#!/bin/sh
SDK=`dirname $0`
SCRIPT=`basename $0`
SDKPARENT=`dirname $SDK`
PLATFORM=`uname -sp`
if [ "$PLATFORM" = "Darwin i386" -o "$PLATFORM" = "Darwin x86_64" ]; then
echo "iPhone Toolchain installer script by rpetrich"
echo ""
if [ "$SDKPARENT" != "/Developer/Platforms/iPhoneOS.platform/Developer/SDKs" ]; then
echo "$SDK is not a valid iPhone SDK. Move this script to /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/install-sdk"
else
echo "Be sure you have installed APT7 and OpenSSH and have closed Cydia before continuing!"
/bin/echo -n "iPhone IP Address: "
read ADDRESS
pushd $SDK
tar -cvz - . 2> /dev/null | ssh root@$ADDRESS "(mkdir -p /var/sdk && cd /var/sdk && tar xvpzf - && ./$SCRIPT)"
popd
fi
elif [ "$PLATFORM" = "Darwin arm" ]; then
pushd /var/sdk/usr/lib
ln -fs libgcc_s.1.dylib libgcc_s.10.5.dylib
ln -fs dylib1.o dylib1.10.5.o
ln -fs crt1.o crt1.10.5.o
ln -fs libstdc++.6.0.9.dylib libstdc++.6.dylib
ln -fs libstdc++.6.0.9.dylib libstdc++.dylib
ln -fs libobjc.A.dylib libobjc.dylib
ln -fs libSystem.B.dylib libSystem.dylib
popd
ln -fs /usr/include/substrate.h /var/sdk/usr/include/substrate.h
apt-get -y install curl git make ldid less com.ericasadun.utilities nano adv-cmds top rsync file-cmds inetutils
curl -L http://apt.saurik.com/cydia/debs/libgcc_4.2-20080410-1-6_iphoneos-arm.deb -o libgcc.deb
dpkg -i libgcc.deb
rm libgcc.deb
apt-get -y install csu iphone-gcc coreutils cycript
else
echo "Unknown OS and architecture!"
fi
@rpetrich
Copy link
Author

ryanchapman: Thanks. I've added those changes. The proper way is to compile+link is to set the sysroot to /var/sdk. Theos, for example, does this already on iOS.

@akhilpo
Copy link

akhilpo commented Oct 26, 2012

Where can I get libobjc.A.dylib? I dont want to download the entire xcode just for that file. Can you point me some other location?

@zxhubo
Copy link

zxhubo commented Jan 20, 2022

After I installed iphone-gcc using the following command:
apt-get install iphone-gcc

Always prompt the following error:

iPhone:~/tmp root# apt-get install iphone-gcc
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package iphone-gcc is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'iphone-gcc' has no installation candidate

Do you know how to solve this error?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment