You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Matt Godbolt 6fc5c166da Lint fixes 7 years ago
.idea Intellij churn 7 years ago
c-preload Allow access to '.' to fix up the way icc works 7 years ago
d Add clean rule to d/Makefile, and clean up subdirectories in 'make clean' 7 years ago
etc Suppress banner on msvc; don't print command-line 7 years ago
examples Merge branch 'master' into msvc-spike 7 years ago
lib Lint fixes 7 years ago
static Lint fixes 7 years ago
static-old Tidying up of some old stuff 7 years ago
test Add an example 64-bit msvc compile 7 years ago
.bowerrc First move towards rewrite 7 years ago
.gdb_history 6.1 rc2 7 years ago
.gitignore Early support for r.js 7 years ago
.jshintrc Add IDEA files. 8 years ago
.travis.yml Added support for node 6 7 years ago
LICENSE Update copyright 7 years ago
Makefile Lint fixes 7 years ago Clarify readme 7 years ago Only serve items from out/dist on demand; use @import in CSS instead of lots of includes; configure r.js to optimize CSS too 7 years ago
app.js Lint fixes 7 years ago
bower.json Support simple fetching of remote resources 7 years ago
package.json Lint fixes 7 years ago

Build Status Codewake

Compiler Explorer

Compiler Explorer is an interactive compiler. The left-hand pane shows editable C/C++/Rust/Go/D code. The right, the assembly output of having compiled the code with a given compiler and settings. Multiple compilers are supported, and the UI layout is configurable (the Golden Layout library is used for this).

Try out one of the demo sites: C++, Rust, D or Go.


Compiler Explorer is written in node.js.

Assuming you have npm and node installed, simply running make ought to get you up and running with an Explorer running on port 10240 on your local machine: http://localhost:10240/

The Makefile will automatically install all the third party libraries needed to run; using npm to install server-side components and bower to install all the client-facing libraries.

If you want to point it at your own GCC or similar binaries,either edit the etc/config/ or else make a new one with the name The config system leaves a lot to be desired, I'm working on porting CCS to javascript and then something more rational can be used.

Feel free to raise an issue on github or email me directly for more help.


Compiler Explorer is maintained by Matt Godbolt. Multiple compiler and difference view was implemented by Gabriel Devillers.