I search a lot on internet how to do this, and I found some info from Anastas Stoyanovsky. Most people posted that if you install libgcc on iOS 4 it will crash at boot but this is not true.
Here is what you need to do in order to be able to compile and run a C application on iphone:
1. You will need to Jailbreak the iPhone first, search on google for more info.
2. Install OpenSSH from Cydia.
3. Connect iPhone to your wireless network and SSH to it.
4. Download this application using: wget http://www.syshalt.net/pub/iphone/gcc-iphone/fake-libgcc_1.0_iphoneos-arm.deb
5. Install libcc using: dpkg –i fake-libgcc_1.0_iphoneos-arm.deb
6. Install iphone-gcc using this command: apt-get install iphone-gcc
(you can download this version from my website: iphone-gcc if does not work on your device the one that is installed by default)
7. Download using: wget http://www.syshalt.net/iphone/gcc-iphone/sdk-2.0-headers.tar.gz
8. Untar with command: tar -xvzf sdk-2.0-headers.tar.gz
9. Enter in the new created folder with: cd include-2.0-sdk-ready-for-iphone
10. Copy all files to include folder with command: cp –r * /usr/include
11. Now type: cd .. in order to return to the previous folder
12. Download using: wget http://www.syshalt.net/iphone/gcc-iphone/gcc_files.tar.gz
13. Untar with command: tar -xvzf gcc_files.tar.gz
14. Enter in the new created folder with command: cd gcc_files
15. Copy all files to /usr/lib using command: cp –r * /usr/lib
16. Install ldid to sign the application (this will prevent iOS to kill the application at startup) using: apt-get install ldid
17. Sign your compilet aplication using: ldid –S <application>
18. Run the application using: ./<application>Update:
For iOS 7.x if you get errors installing gcc, try this patched version:4.1 wget http://www.syshalt.net/iphone/gcc-iphone/iphone-gcc_4.2-20080604-1-8p_iphoneos-arm.deb
4.2 dpkg -i iphone-gcc_4.2-20080604-1-8p_iphoneos-arm.debSuggestion: Install using: apt-get install nano
This will help you code easy directly from terminal.
Here is an example of hello world using C and gcc to compile on iPhone iOS 4:
I used nano hello.c in terminal to open a new files and writed this simple application:
#include <stdio.h>
int main()
{
printf(“hello, world\n”);
return 0;
}
and then CTRL+X to save it, then I typed: gcc –o hello hello.c and after that ldid –S hello
Now you can run your application using ./hello
I’ve tried to build some UNIX software from src. I assume the software (specifically, a more modern edition of git to get the place of the obsolete .deb available on cydia) should build, but ./configure says gcc cannot produce any output, even if I’m root. Any idea on how should I came out of this?
Thanks
I figured out one thing: can anyone try to build an edition of macports for iOS? Obviously not all the ports can interface themselves on iDevices (I’m pretty sure Qt cannot, with many others), but littler and lighter software could be useful to make iDevices more UNIX-alike. Unfortunately, I don’t own one, but a friend has asked me if I could build him something like this on a mac.
I used i-Fun box and iFile to install and move all the files that I need, (cuz I dont remember the pass of my SSH. And I use MobileTerminal.
All was ok, but when I tried to do “apt-get install ldid”, it says:
-sh: apt-get_ command not found.
What can i do?
After google it I found the solution: First install from cydia Aptbackup
Does it compile C++? Cuz I’m getting some errors.
Thank you!
Works perfect
Have you tried compiling objective c? I get an error
ld: library not found for -lobjc
collect2: ld returned 1 exit status
make: *** [HelloWorld] Error 1
It seems that iphone-gcc does not come with objective c support
thank you!!!
I can’t thank you enough for this, it has made hours of searching finally end favorably!
Si ca ne marche pas , installer ca http://code.google.com/p/iphone-gcc-full/
Thank you! Works great. Any chance of including gfortran as well?
Thanks! Works great! Any chance to include gfortran as well?
Will the above tutorial work on ipad2 with iOS5 ?? ..
please some one inform
I’m getting errors in the studio.h header
This rules. Can one link to the full framework toolchain?
It worked on the iPad2 with ios5.
Thanks a lot, great tutorial !
Thank you !~~
Finding libSystem.B.dylib everywhere……
Work like a charm!
Thanks a lot.
You can install Gcc in Cydia too just after install, and when compiling don’t forget to sign your app withing an iPad/2/iPhone by
compiling: gcc -o outPutName AppName.c
signing : ldid -S outPutName
Runing: ./outPutName
Ipad 2, ios 5.1.1 and this worked great. Thank you
ipad ios 5.1.1 – hello world works at least 🙂
Thanks-
thanks so much, your guide turned the process from nightmarish to a kid’s game 🙂
have a good day
@Matt … studio.h??? That may be your error. It’s stdio.h. 🙂
The libstdg++.dylib is missing in the fake libgcc,hence cant compile c++.can u give any solution,please?thanks in advance.
libgcc_s_6 is not found by ld/as
any idea where to get one?
thanks worked finally yay
I spent 10 hours and 2 nights trying to get it’s going before I found your site I wwas about to give up!
@Darius, glad this post helped you.
Hello,
Trying to get this to work on my iPod Touch 4th Gen. It has an A4 (armv7) processor, and when compiling I get the error:
ld: unknown/unsupported architecture name for: -arch arm
collect2: ld returned 1 exit status
Am I doing something wrong? has anyone else had success with this on the iPod Touch 4G? Thanks for any advice.
-Andrew
it shows many errors from stdio.h and string.h. and i can’t run c++ because it says permision denied ( access to /usr/include/c++)
This all worked out great for me running ios 7.0.1 jailbreaked, my question is where do we go from here? ive tryed searching for an example gui hello world application written in c or c++ but have come up empty anyone got any suggestions?
I run into problems when trying to install iphone-gcc on a jailbroken ipad running ios 7.1:
http://i.imgur.com/BVl5LEt.png
“iPad-van-Niek:~ root# dpkg -i iphone-gcc_4.2-20080604-1-8_iphoneos-arm.deb
Selecting previously deselected package iphone-gcc.
(Reading database … 1278 files and directories currently installed.)
Unpacking iphone-gcc (from iphone-gcc_4.2-20080604-1-8_iphoneos-arm.deb) …
dpkg: dependency problems prevent configuration of iphone-gcc:
iphone-gcc depends on csu; however:
Package csu is not installed.
iphone-gcc depends on odcctools; however:
Package odcctools is not installed.
dpkg: error processing iphone-gcc (–install):
dependency problems – leaving unconfigured
Errors were encountered while processing:
iphone-gcc”
@dohduhdah please try before installing gcc
wget http://apt.saurik.com/debs/csu_232-2_iphoneos-arm.deb
dpkg -i csu_232-2_iphoneos-arm.deb
wget http://apt.saurik.com/debs/odcctools_286-8_iphoneos-arm.deb
dpkg -i odcctools_286-8_iphoneos-arm.deb
Oh, I see I need a patched version of gcc found here:
https://code.google.com/p/apiexplorer/downloads/list
@Sergiu: It looked like the patched version of gcc installed ok. Is it ok to install csu and odcctools afterwards or is it critical to install those first?
when I run gcc, it no longer gives an “illegal instruction: 4” error.
@dohduhdah
don`t know, no iphone where to test. If you install, i`ll update the post based on your experience on iOS 7
Well, it looks like the gcc (patched for ipad4) is working. It installed without errors and it seems to run ok.
You can also install CppCode – offline C/C++ IDE & Compiler on iOS. No internet connection, no jailbreak required, code complete supported! Visit http://cppcode.info