# c_cpp_compiler
**Repository Path**: whystart/c_cpp_compiler
## Basic Information
- **Project Name**: c_cpp_compiler
- **Description**: GNU C/C++ compiler on Android, full offline compiler, Learn to code on the go.
- **Primary Language**: Unknown
- **License**: GPL-3.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2019-09-21
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README

# C/Cpp Compiler on Android - CPP N-IDE
## C/C++ compiler for Android device using GCC compiler
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
1. mismatching allocation and deallocation
1. uninitialized variables usage
1. 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
## 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 .