Skip to content

tranleduy2000/c_cpp_compiler

Repository files navigation

C/Cpp Compiler on Android - CPP N-IDE

C/C++ compiler for Android device using GCC compiler

google-play

This project is developed to help the community to learn C or C++ on the go.

You can use this app to code and compile C/C++ project without Internet.

Features

  • Offline C compiler
  • Offline C++ compiler
  • Native activity, SDL2 support for GUI
  • Build executables file, export your program
  • Make 4.0, makefile support, you can build as on your PC
  • Static code analysis, it helps you to fix "difficult" bugs:
    1. memory leaks
    2. mismatching allocation and deallocation
    3. uninitialized variables usage
    4. array index out of bounds errors
  • C/C++ code formatter
  • Terminal emulator: full-featured terminal
  • Git, svn support (Install by use Intall plugin features)
  • Diagnostic utility: auto jump to error position
  • Compiler output: See stdout, stderr
  • Syntax highlighting: C/C++ language and very more language (only highlight without compile)
  • C/C++ examples from https://www.programiz.com/cpp-programming/examples
  • File manager
  • Multi Tab: you can open different files in different tabs to manage editing multiple files simultaneously with ease.
  • Easy toolbar: you can quickly create a new file, open, save, save as, undo/redo, insert some commonly used symbols, go back to last edit location, etc.
  • List of recently opened files
  • Regular search, replace or replace all
  • Change the typeface and font size
  • Show line numbers
  • Show whitespace characters (tabs, line breaks)
  • Regular search, replace or replace all
  • "Word wrap" switch
  • Lock the screen orientation in auto, horizontal or vertical
  • Remember the last opened file
  • Hide the soft keyboard, long press the edit area can be turn on
  • Convert selected text to uppercase or lowercase by long pressing the "edit area"
  • Automatic indentation
  • Keep the screen awaken
  • Dark/Light Themes

How to use SDL, NativeActivity?

You need install SDL Plugin for CPP N-IDE and open it once time to install libraries. The application will be auto detect linker flags (LDFLAGS) for your source file

How to use makefile?

  1. Write your makefile
  2. Open terminal and type "make"

How to install libraries

  1. Open drawer then click "Install libraries/Plugin"
  2. Find your prebuilt libraries your need

Currently, I supported commom libraries such as curl, CLooG, dropbear, expat, fontconfig, freetype, glib, gmp, isl, conv, pcre, png, uuid, mpc, mpfr, ncurses, openssl, ppl

Android install

  • For arm devices: download app-arch_arm7-release.apk in release
  • For x86 devices: download app-arch_x86-release.apk in release

TODO

  • Code completion
  • Real-time diagnostics (warnings, errors) and suggestion to fix it
  • Static code analysis
  • Git support

Pull request always welcomed.

Screenshots

google-play google-play google-play

License

GNU GPL V3.0

Copyright (C) 2018 Tran Le Duy	

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.