Morgan Stanley | Columbia University | Texas A&M University

home | C++ | FAQ | technical FAQ | C++11 FAQ | publications | TC++PL | Tour++ | Programming | D&E | bio | interviews | applications | glossary | compilers

An incomplete list of C++ compilers

Modified August 20, 2014

I (Bjarne Stroustrup) am often asked to recommend a C++ compiler. However, I don't make recommendations; that would be too much like taking sides in commercial wars. Also, I don't know every C++ compiler; there are simply too many "out there".

I recommend that people take Standard conformance very seriously when considering a compiler. If you can, avoid any compiler that doesn't closely approximate the ISO standard or fails to supply a solid implementation of the standard library. The recent releases from all the major C++ vendors do that.

Most of these compilers are embedded in frameworks of software development tools and libraries. These frameworks, environments, and libraries can be most helpful, but do remember that their use can lock you into a single vendor and that some uses have significant run-time performance implications.

When looking for C++ on the web, you find that much of the information is "hidden" under various product names. In fact, I had more luck finding C++ compilers using google.com than by going directly to vendors that I knew sold them. Here, I have chosen to list C++ implementations simply by the name of their provider, ignoring marketing labels.

Some compilers that can be downloaded for free (do check their conditions/licenses before attempting commercial use):

Some compilers that require payment (some allow free downloads for trial periods):

It is impossible for me to keep this list complete and up-to-date. The C++ world is just too large and too much new is happening. Apologies to those suppliers who I failed to list, I know there are some, and please, if you have a link that you think ought to be listed here, send me a message: bs at cs dot tamu dot edu. Again: I just list compilers, I don't endorse them. Also, there can be no one compiler that is best for everyone, people's needs differ too much for that.

Other lists of C++ compilers:

A filter to improve error messages from many compilers see STLfilt.

Morgan Stanley | Columbia University | Texas A&M University

home | C++ | FAQ | technical FAQ | C++11 FAQ | publications | TC++PL | Tour++ | Programming | D&E | bio | interviews | applications | glossary | compilers