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 dfbf4c729a Attempt at addressing #228 7 years ago
.idea IDEA churn 7 years ago
c-preload More renamings 7 years ago
d Another year, another copyright update 7 years ago
etc Add aliases for the old (badly spelt) ellcc compilers! 7 years ago
examples Merge branch 'master' into msvc-spike 7 years ago
lib Another year, another copyright update 7 years ago
rust Add rust demangling - #213 7 years ago
static Fix alias support 7 years ago
static-old Another year, another copyright update 7 years ago
test Fix tests 7 years ago
.bowerrc First move towards rewrite 7 years ago
.gdb_history 6.1 rc2 8 years ago
.gitignore New most prioritary properties files : `*` used for local instances of compiler explorer. 7 years ago
.jshintrc Add IDEA files. 9 years ago
.travis.yml Added support for node 6 7 years ago
LICENSE Another year, another copyright update 7 years ago
Makefile gdc fixups in makefile 7 years ago s/gcc-explorer/compiler-explorer/g 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 Attempt at addressing #228 7 years ago
bower.json s/gcc-explorer/compiler-explorer/g 7 years ago
package.json s/gcc-explorer/compiler-explorer/g 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 * files have the highest priority when loading properties.

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.