Project details
Flash C provides a streamlined C development experience for Linux x86-64 systems, offering a command-line compiler and a text-mode IDE reminiscent of classic DOS environments. With features like a built-in standard library, source-level debugging, and a cohesive toolchain, it simplifies C programming while optimizing code generation.
Flash C is a compact C compiler combined with a DOS-style text-mode integrated development environment (IDE) specifically designed for Linux x86-64 systems. It allows seamless compilation of ANSI C code (C89) into native executables, eliminating the need for a traditional assembler, linker, or C library, thereby simplifying the development process.
Error hello.c 5: Undefined symbol 'x' in function main, which help in locating issues quickly.To get started with Flash C, download the latest release from the Releases page. The unpacked folder can be executed directly or installed for easier access:
cd flash-c-*/
./install.sh # Installs to ~/.local or run with root privileges for /usr/local
Alternatively, it can be built from source:
make # Compiles the IDE and compiler
./build/fc hello.c # Opens or creates the hello.c file in the IDE
./build/fcc hello.c # Compiles the code directly, producing ./hello
./hello # Runs the executable
Within the IDE, press F2 to save, F9 to compile, and Ctrl+F9 to run the code. The Message window provides immediate feedback on errors, allowing developers to navigate directly to the problematic line.
Documentation is available for detailed guidance on using the IDE, compiler options, library functions, and internal architecture. Key documents include:
The Flash C project is organized into several directories, each dedicated to specific components:
src/compiler/ # Contains the compiler components
src/ide/ # Implements the IDE functionalities
runtime/ # Houses the runtime library
...
docs/ # Includes documentation and screenshots
Flash C aims to replicate the usability of classic DOS-era C IDEs while integrating advanced compiler optimization techniques, making it an effective tool for C programming on modern Linux systems. Contributions and feedback are always welcome, fostering continuous improvement and community involvement.
Comments
0Start the conversation
Share the first comment.