Dev:Theos/Setup/iOS

This page is for setting up Theos on an iOS Device. For other platforms see Theos/Setup.

Requirements

 * A jailbroken iOS device with Cydia (or another package manager) installed.
 * Knowledge on how to use a command line terminal.
 * Objective C knowledge.

Optional Requirements

 * OpenSSH installed on your device and a computer that you can SSH into your device with (using MobileTerminal gets tedious pretty quickly).

Installing Theos and it's dependencies
The output should be:
 * 1) Add the following repositories to your Cydia sources.
 * 2) * http://coolstar.org/publicrepo
 * 3) * http://nix.howett.net/theos
 * 4) Install the following packages in Cydia:
 * 5) Check that Theos is installed on your device by running: echo $THEOS
 * 1) Check that Theos is installed on your device by running: echo $THEOS
 * 1) Check that Theos is installed on your device by running: echo $THEOS
 * 1) Check that Theos is installed on your device by running: echo $THEOS

Setting up the iOS SDK
Navigate to https://sdks.website and check which iOS SDK you wish to download.


 * 1) Create a directory for the SDK to be placed in: mkdir -p $THEOS/sdks
 * 2) Download the SDK temporarily and extract to the SDK directory: curl -ksL "https://sdks.website/dl/iPhoneOSX.Y.sdk.tbz2" | tar -xj -C $THEOS/sdks  X.Y being the version numbers of the SDK, as seen in https://sdks.website/.

Additional Step for 64 bit (ARM64) Devices
With the current version of Theos (0.9.639-1), building on ARM64 will throw an error. The following will solve this issue.


 * 1) Create symlinks to support ARM64: ln -s $THEOS/makefiles/platform/Darwin-arm.mk $THEOS/makefiles/platform/Darwin-arm64.mk&#10;ln -s $THEOS/makefiles/targets/Darwin-arm $THEOS/makefiles/targets/Darwin-arm64

Complete Text Tutorial by iOSChris
If you are having any issues following the tutorial above and need more clarification on the setup process, visit my tutorial located at the following address:
 * http://chrisharrisdev.com/blog/2016/09/22/tutorial-install-theos-on-idevice-for-jailbreak-development/