Requirements: Android version 2.1 and higher
Overview: C4droid is a C compiler for Android.
If you have found a bug or app is not working, email me.
If app crashes on start, check that enough internal memory is available (not 64Kb).
Root is not required, but if you have enough internal memory OR you have rooted your device, you can get C++ support, read further. (some comments about "iostream not found" are fake, their authors just didn't follow installation instructions).
Updating from lower than 3.0 versions:
WARNING! Uninstall this app before update! Else app will crash. It's well known Android bug (details: http://code.google.com/p/android/issues/detail?id=1227).
You have been warned!
Result of compilation (binary) is placed in "/data/data/com.n0n3m4.droidc/files/temp", because sdcard doesn't have permission for execution by default.
If you have "Illegal instruction" error, using internal compiler (TCC), install GCC plugin, GCC supports softfloat (by default).
Long click save button to "save as", long click run to run with arguments.
C4droid already has almost full C language support, so you don't need to wait when it will be added.
You can to write your own applications on the Android phone, and run them. This app uses TCC and uClibc, so it has full support of ANSI C and some support of ISO C99. C4droid can be used for educational purposes or to practice in C language.
Some components of C4droid are LGPL-licensed. You can download used source code of TCC and uClibc on their websites (But TCC had been modified by me, so I recommend to email me to get modified source) C4droid includes Android Terminal Emulator so you can to run your application comfortably.
To get C++ support you need:
0) Install C4droid
1) Install GCC plugin for C4droid from Android Market.
2) Launch GCC plugin for C4droid and press "install to internal memory" (or to external if you have root rights)
3) Select G++ compiler in C4droid preferences.
4) Use "iostream", not "iostream.h"
5) Add "using namespace std;" to your program (before int main)
Android Emulator 1.6, QVGA
Android Emulator 2.2, WVGA
Acer Liquid 2.2, WVGA
Herotab C8, WVGA
WARNING! All Telechips and MediaTek based devices are unsupported (Android phones/tablets from china), because of the incompatiblity with EABI. Devices without VFP (VIA) are partially unsupported too (floating point operations).
Keywords: c compiler, c interpreter, c++ compiler, GCC, c/c++ interpreter, c/c++ compiler.
What's in this version:
Email me if app won't work after update.
Fixed Samsung keyboard bug.
Updated uClibc, so now pthreads are supported.
Finally fixed ICS terminal emulator bugs.
Fixed battery drain.
Added INTERNET permission for sockets support without root rights.
Terminal Emulator bugfix.
File dialog bugfix.
Font size is configurable now.
Programs can be runned with root rights.
WARNING! Uninstall app before update!
Fixed TCC cast issue.