Http://coolshell.info/blog/2014/12/c-open-project.html
C-Language open source project worth learning
1.Webbench
Webbench is a very simple web site pressure measurement tool that is used under Linux. It uses fork () to simulate multiple clients accessing the URL we set at the same time, testing the performance of the site under pressure, and simulating up to 30,000 concurrent connections to test the load capacity of the site. Webbench use C language, code is too concise, the source add up to less than 600 lines.
Download Link: https://github.com/LippiOuYang/WebBenchl
2.Tinyhttpd
TINYHTTPD is an ultra-lightweight HTTP server, developed in C language with only 502 lines (including comments), with a simple client that can read this code to understand the nature of an Http server.
Download Link: http://sourceforge.net/projects/tinyhttpd/
3.cJSON
Cjson is a JSON codec in the C language, very lightweight, C files only more than 500 lines, the speed is very ideal.
Cjson also has several weaknesses, although the function is not very powerful, but the Cjson small body and speed is the most commendable. Its code is very well maintained, the structure is easy to understand and can be learned as a very good C language project.
Project home: http://sourceforge.net/projects/cjson/
4.CMockery
Cmockery is a lightweight framework that Google publishes for C unit testing. It is small, has no dependencies on other open source packages, and is less intrusive to the code being tested. Cmockery the source code line of less than 3K, you read the Will_return and mock source is at a glance.
Main Features:
Free and open source, Google provides technical support;
The lightweight framework makes testing faster and easier;
Avoid the use of complex compiler features, the old version of the compiler, the compatibility is good;
It is not mandatory to require the code to be tested to rely on the C99 standard, which is useful for the development of many embedded systems
Download Link: http://code.google.com/p/cmockery/downloads/list
5.Libev
Libev is an open source event-driven library based on the infrastructure provided by OS such as Epoll,kqueue. Known for its efficiency, it can unify IO events, timers, and signals to be processed in a single set of event-handling frameworks. Based on the reactor model, the efficiency is high, and the Code is streamlined (4.15 versions over 8,000 lines), which is a good resource for learning event-driven programming.
Download Link: http://software.schmorp.de/pkg/libev.html
6.Memcached
Memcached is a high-performance distributed memory object caching system for dynamic Web applications to mitigate database load. It provides the speed of a dynamic database-driven Web site by caching data and objects in memory to reduce the number of times the database is read. Memcached is based on a hashmap that stores key/value pairs. Memcached-1.4.7 's code volume is acceptable, only about 10K lines.
: http://memcached.org/
7.Lua
Lua was great, and Lua was invented by Brazilians, which made me uncomfortable, but not blushing, most jealous.
What makes me blush is the source code of LUA, 100% ANSI C, which is not doped at all. It is easy to compile on any platform that supports the ANSI C compiler. I've tried, it's a bit of crap. The number of LUA code is small enough, 5.1.4 only 1.5W lines, minus blank lines and comments can be estimated to 1W lines.
: http://www.lua.org/
8.SQLite
SQLite is an open-source, embedded relational database that implements a self-contained, 0 configuration, transactional SQL database engine. It is characterized by its high portability, ease of use, compact structure, high efficiency and reliability. Small enough, roughly 30,000 lines C code, 250K.
: http://www.sqlite.org/.
9.UNIX V6
UNIX V6 Kernel Source code includes device drivers, including about 10,000 lines, this number of source code, the beginner is able to fully understand. There is a saying that a person can understand the code limit of 10,000 lines, UNIX V6 kernel source code in terms of the number is exactly within this range. See here, do you have "if only 10,000 lines, maybe I can learn" idea?
On the other hand, recent operating systems, such as the latest version of Linux, are said to have more than 10 million lines of kernel source code. Even if you are not a beginner, it is virtually impossible to fully understand the entire code.
: http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6
10.NETBSD
NetBSD is a free, highly-ported unix-like operating system that is the most current portable platform operating system and can be executed on many platforms, from 64bit Alpha servers to handheld devices and embedded devices. The slogan for the NetBSD program is: "Of course it runs NetBSD". Its simple design, code specification, and many advanced features make it highly acclaimed in the industry and academia. Due to its concise design and advanced features, it has excellent performance in both production and research, and it also has a complete source code supported by the user. Many programs can be easily obtained by NetBSD Packages collection.
: http://www.netbsd.org/
C + + Resource Encyclopedia
Some summary lists of C + + frameworks, libraries, and resources include: standard library, Web application framework, AI, database, image processing, machine learning, logging, code Analysis, and more.
Standard library
C + + standard library, including STL containers, algorithms and functions.
C + + Standard Library: A collection of classes and functions, written in the core language, is also part of C++iso's own standards.
Standard Template Library: Templates
C Standard library Specification for POSIX Library:posix Systems
ISO C + + standards committee:c++ Standard Committee
Framework
C + + common frameworks and libraries
Apache C + + standard Library: A collection of algorithms, containers, iterators, and other basic components
The Asl:adobe source code library provides peer review and portable C + + source code libraries.
Boost: A collection of a large number of common C + + libraries.
BDE: The development environment from the Bloomberg Information Lab.
Cinder: Open Source Development community with professional quality and creative coding.
Cxxomfort: Lightweight, a library that contains only header files, porting some of the new features of C + + 11 to c++03.
Dlib: A common cross-platform C + + library designed using contractual programming and modern C + + technology.
Eastl:ea-stl Public part
Ffead-cpp: Enterprise Application Development Framework
Folly: Open source C + + library developed and used by Facebook
JUCE: A comprehensive C + + class library for developing cross-platform software
Libphenom: An event framework for building high-performance and highly scalable systems.
Libsourcey: c++11 evented IO for real-time video streaming and high-performance network applications
Multi-platform Tool library for LIBU:C language writing
The design of the Loki:c++ library includes common design patterns and the implementation of idioms.
Mili: Small C + + library with header files only
Openframeworks: Development of C + + toolkit for creative coding.
Qt: Cross-platform application and user interface framework
Reason: A cross-platform framework that makes it easier for developers to use Java. NET and Python, while also satisfying their needs for C + + performance and benefits.
ROOT: A range of object-oriented frameworks with all the capabilities to process and analyze large amounts of data very efficiently for use by the European Atomic Energy Research Institute.
STLport: A representative version of STL
STXXL: Standard Template Library for additional large datasets.
ultimate++: C + + cross-platform rapid application Development Framework
Windows Template Library: C + + libraries for developing Windows applications and UI components
Yomm11:c++11 's Open multi-methods.
Artificial intelligence
Btsk: Game Behavior Tree Launcher tool
Evolving Objects: A template-based, ANSI C + + Evolutionary computing library that can help you write your own random optimization algorithm very quickly.
The NEU:C++11 framework, a set of programming languages, is used to create multi-purpose software systems for AI applications.
Asynchronous event Loops
Boost.asio: A cross-platform C + + library for network and underlying I/O programming.
Libev: Full-Featured, high-performance time-cycle, slightly emulated libevent, but no longer as limited as libevent, but also fixed some of its bugs.
Libevent: Event Notification Library
LIBUV: Cross-platform asynchronous I/O.
Audio
Audio, sound, music, digital music library
FMOD: Easy-to-use game authoring tool for cross-platform audio engines and audio content.
Maximilian:c++ Audio and music digital signal processing library
OpenAL: Open source Audio Library-cross-platform audio API
Opus: A fully open, royalty-free, highly versatile audio codec
Speex: Free codec for opus abandonment
Tonic:c++ easy-to-use and efficient audio synthesis
Vorbis:ogg Vorbis is a fully open, non-proprietary, royalty-free, universal compressed audio format.
Ecology
Biological information, genomics and biotechnology
Libsequence: C + + library for representing and analyzing population genetics data.
Seqan: Algorithms and data structures that focus on biological data sequence analysis.
Vcflib: C + + library for parsing and processing VCF files
WHAM: The genetic structure variation that applies the Lenovo test directly to the BAM file.
Compression
Compression and archive libraries
BZIP2: A completely free, free patent and high-quality data compression
Doboz: A compact library that can be decompressed quickly
PHYSICSFS: A library that provides abstract access to a variety of archives, primarily for video games, and is inspired partly by the Quake3 file subsystem.
Karchive: A library for creating, reading, and manipulating file archives (such as zip and tar), which provides transparent compression and decompression of data through a series of subclasses of Qiodevice, using gzip format.
LZ4: A very fast compression algorithm
Lzham: Lossless compression database, compression ratio close to LZMA, but decompression is much faster.
lzma:7z format default and general compression methods.
Lzmat: And its fast real-time lossless data compression Library
Miniz: Single C source file, condensed/expanded compression library, using zlib compatible Api,zip archive read/write, PNG write mode.
Minizip:zlib latest bug fixes, supports PKWare disk spanning, AES encryption and IO buffering.
Snappy: Fast compression and decompression
ZLib: A very compact data stream compression Library
Zziplib: Provides read access to the ZIP archive.
Concurrency of
Concurrent execution and multithreading
Boost.compute: C++gpu Compute Library for OpenCL
Bolt: C + + Template Library optimized for GPU
C++react: A reactive programming library for C++11
Intel Tbb:intel Threading Component Block
LIBCLSPH: OpenCL-based GPU-accelerated SPH Fluid Simulation Library
OpenCL: Open standards for heterogeneous systems with parallel programming
Openmp:openmp API
Thrust: Parallel algorithm library similar to the C + + Standard Template Library
HPX: Universal C + + runtime system for parallel and distributed applications of any size
VEXCL: C + + vector expression Template Library for Opencl/cuda.
Container
C + + B-tree: A template Library for the command memory container based on the B-tree data structure
Implementation of open addressing hash table algorithm in hashmaps:c++
Cryptographic Science
Bcrypt: A cross-platform file encryption tool, encrypted files can be ported to all supported operating systems and processors.
Beecrypt:
Botan:c++ Encryption Library
crypto++: a free C + + library for encryption schemes
Complete implementation of the GNUPG:OPENPGP standard
GNUTLS: Secure Communication Library for SSL,TLS and DTLS protocols
Libgcrypt
Libmcrypt
LIBRESSL: Free SSL/TLS protocol, which belongs to a branch of OpenSSL
Libtomcrypt: A very comprehensive, modular, portable encryption tool
Libsodium: NACI-based encryption library, opinionated, easy to use
Nettle the underlying encryption library
OpenSSL: A powerful, commercial, fully functional, open source encryption library.
Tiny AES128 in C: a small, portable implementation of the AES128ESB encryption algorithm implemented with C
Database
databases, SQL Server, ODBC drivers and tools
Hiberlite: C + + Object-relational mapping for Sqlite3
Hiredis: A very simple C client library for the Redis database
LevelDB: Fast Key-value repository
LMDB: An embedded key-value store that conforms to the four basic elements of a database
mysql++: C + + wrapper that encapsulates the MySQL API
ROCKSDB: Fast storage of embedded key values from Facebook
SQLite: A fully embedded, full-featured relational database with only hundreds of KB that can be properly included in your project.
Debugging
Debug libraries, memory and resource leak detection, unit testing
Boost.Test:Boost Test Library
Catch: A very stylish, C + + native framework that contains only header files for unit testing, test-driven development, and behavior-driven development.
CppUnit: A C + + test framework ported by JUnit
Ctest:cmake test Driver
Googletest: Google C + + testing Framework
IG-DEBUGHEAP: Multi-platform debug heap for tracking memory errors
Libtap: Writing tests in C language
memtrack-for C + + tracking memory allocation
microprofile-Cross-platform Network attempt analyzer
Minunit: Using a C-written mini-unit test framework with only two macros
Remotery: A single C file parser for Web views
unittest++: Lightweight C + + unit Testing Framework
Game engine
Cocos2d-x: A cross-platform framework for building 2D games, interactive books, demos, and other graphical applications.
Grit: Community project for building a free game engine to implement the open world 3D game.
Open source high-performance real-time #d engine written in irrlicht:c++ language
Polycode:c++ implements an open-source framework for creating games (bundled with Lua).
Graphical user interface
Cegui: A flexible cross-platform GUI library
FLTK: Fast, lightweight cross-platform C++gui Toolkit.
GTK +: Cross-platform toolkit for creating a graphical user interface
GTKMM: The official C + + interface for the popular GUI library GTK +.
Imgui: Immediate-mode graphical user interface with minimal dependencies
Librocket:librocket is a C + + Html/css game interface Middleware
Mygui: Fast, flexible, simple GUI
Ncurses: End user Interface
Qcustomplot: QT Drawing controls with no more dependencies
QWT: QT controls for user and technology applications
Qwtplot3d: A feature-rich QT/OPENGL-based C + + programming library that essentially provides a bunch of 3D controls
Otterui:otterui is a user interface development solution for embedded systems and interactive entertainment software
Pdcurses Common graphics function library with source code and precompiled Library
WxWidgets C + + library, which allows developers to create applications for widows, Mac OS X,linux and other platforms using a code base
Graphics
BGFX: Cross-platform rendering library
Cairo: 2D graphics library with support for multiple output devices
Horde3d a small 3D rendering and animation engine
Magnum C++11 and OpenGL 2d/3d graphics engine
Ogre 3D is a scene-oriented, real-time, flexible 3D rendering engine (not a game engine) written in C + +
OpenSceneGraph Open source 3D Graphics toolkit with high performance
PANDA3D is a framework for 3D rendering and game development, written in Python and C + +.
Skia Complete 2D Graphics library for drawing text, graphics, and images
Urho3d a cross-platform rendering and game engine.
Image processing
Boost.gil: Universal Image Library
CIMG: Small open-source C + + toolkit for image processing
Cximage: For loading, saving, displaying and converting the image processing and conversion library, the image formats that can be processed include BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG, j2k.
Freeimage: Open Source Library that supports the common image formats and other formats required for multimedia applications today.
Gdcm:grassroots DICOM Library
ITK: A cross-platform open source image analysis System
C + + interface for Magick++:imagemagick programs
C + + interface for Magickwnd:imagemagick programs
OpenCV: Open source Computer Vision Class Library
TESSERACT-OCR:OCR engine
Vigra: General C + + Computer Vision library for image analysis
VTK: Open source Free software system for 3D computer graphics, image processing and visualization.
Internationalization
Gettext:gnu ' GetText '
IBM ICU: Provides Unicode and globalization-supported C, C + +, and Java libraries
Libiconv: Encoding conversion library for different character encodings
Jason
Jason Parsing generator for frozen:c/c++
Jansson: C-Language library for encoding and decoding and processing Jason data
Build and iterate Bson data in jbson:c++14, and libraries for JSON documents
Jeayeson: A very robust C + + JSON library that contains only header files
json++: C + + JSON parser
Json-parser: JSON parser written in portable ANSI C with very little memory
Json11: A mini-c++11 JSON library
Jute: A very simple C + + JSON parser
JSON parsing and print libraries in the Ibjson:c language are easy to integrate with any model.
Libjson: A lightweight JSON library
JSON parsing serialization in Picojson:c++, containing only header files
Qt-json: A simple class for parsing between JSON data and qvariant hierarchies
Qjson: Mapping JSON data to a QT-based library of Qvariant objects
RapidJSON: Fast JSON parsing generator for C + +, with two flavors of sax and Dom APIs
Fast Stream JSON parsing library in YAJL:C language
Log
Boost.Log: Design is very modular and scalable
The Easyloggingpp:c++ log library contains only a single header file.
Log4cpp: A series of C + + class libraries, flexible add log to file, System log, IDSA and other places.
Templog: Lightweight C + + library, you can add logs to your C + + application
Machine learning
Caffe: A fast neural network framework
CCV: A modern computer vision library with C language as its core
Mlpack: Extensible C + + machine learning Library
OpenCV: Open Source computer Vision Library
Recommender: The C language library for product recommendations/recommendations using collaborative filtering.
Shogun:shogun Machine learning Tools
SOFIA-ML: Fast incremental algorithm suite for machine learning
Mathematical
Armadillo: A high-quality C + + linear algebra library with a good balance of speed and ease of use. The syntax is similar to MATLAB
Blaze: High-performance C + + math library for dense and sparse algorithms.
Ceres-solver: C + + library from Google, used to model and solve large complex nonlinear least squares problems.
Cgal: Efficient, reliable collection of collection algorithms
CML: Free C + + math library for games and graphics
Eigen: Advanced C + + Template header file library, including linear algebra, matrices, vector manipulation, numerical resolution and other related algorithms.
GMTL: The mathematical Graphics Template Library is a broad set of tools for implementing basic graphics.
GMP: Used for high-precision computing of A/C + + library, processing signed integers, rational numbers and floating-point numbers.
Multimedia
GStreamer: Building a library of media processing component graphics
LIVE555 Streaming Media: Multimedia streaming library using open standard protocol (RTP/RTCP, RTSP, SIP)
LIBVLC:LIBVLC (VLC SDK) Media framework
Qtav: A multimedia playback framework based on QT and ffmpeg that can help you easily write a player
SDL: Simple, direct-control media layer
SFML: Fast, simple multimedia library
Internet
Ace:c++ Object-oriented network into toolkit
Boost.asio: Cross-platform C + + library for network and bottom-level I/O programming
Casablanca:c++ REST SDK
Cpp-netlib: A collection of open source libraries for advanced network programming
Asynchronous networks for Dyad.c:c languages
Libcurl: Multi-protocol File transfer Library
Mongoose: A very lightweight web server
Muduo: C + + non-blocking network library for Linux multi-threaded servers
Net_skeleton:c/c++ TCP client/server library
NOPE.C: A C-based, ultra-lightweight software platform for scalable server-side and network applications. For C programmers, you can consider node. js
The Onion:c language HTTP Server library is designed to be lightweight and easy to use.
POCO: A C + + class library for building networks and Internet-based applications that can run on desktops, servers, mobile and embedded systems.
Raknet: A cross-platform, open-source C + + network engine for game developers.
Tuf o: Asynchronous Web framework built on C + + for QT.
websocket++: WebSocket client/server library based on C++/boost Aiso
ZeroMQ: High-speed, modular asynchronous communication library
Physics
Dynamics simulation Engine
Box2d:2d's game physics engine.
Bullet:3d's game physics engine.
Chipmunk: Fast, lightweight 2D game Physics Library
Liquidfun:2d's game physics engine
ODE: Open Dynamics Engine-open source, high performance library, simulating rigid body dynamics.
Ofxbox2d:box2d Open source Framework wrapper.
Simbody: A high-performance C + + multibody Dynamics/physics library that simulates joint biomechanics and mechanical systems like vehicles, robots and human bones.
Robot Science
MOOS-IVP: A set of open-source C + + modules that provide autonomy for robotic platforms, especially autonomous marine vehicles.
MRPT: Mobile Robot Programming Toolkit
PCL: Point Cloud Library is a standalone, large-scale open project for 2d/3d image and point cloud processing.
Robotics Library (RL): a standalone C + + library that includes robot dynamics, motion planning and control.
Robwork: A set of C + + libraries for simulation and control of robotic systems.
ROS: A robotic operating system that provides libraries and tools to help software developers create robotic applications.
Scientific calculations
FFTW: A C language library that calculates DFT using one-dimensional or multidimensional calculations.
GSL:GNU Science Library.
Script
Chaiscript: An easy-to-use embedded scripting language for C + +.
Lua: A small, fast scripting engine for configuration files and basic application scripting.
Luacxx: C + + API for creating LUA bindings
SWIG: a wrapper/Interface builder that allows you to link your C + + code to JAVASCRIPT,PERL,PHP,PYTHON,TCL and Ruby
V7: embedded JavaScript engine.
V8: Google's fast JavaScript engine can be embedded in any C + + application.
Serialization of
Cap ' n Proto: Fast data Interchange Format and RPC system.
CEREAL:C++11 Serialization Library
Flatbuffers: Memory-efficient Serialization library
Messagepack:c/c++ 's efficient binary serialization library, such as JSON
PROTOBUF: Protocol buffering, Google's data Interchange format.
PROTOBUF-C: Implementation of protocol Buffering for C language
Simplebinaryencoding: Encoding and decoding of application information in binary format for low-latency applications.
Thrift: Efficient cross-language ipc/rpc for c++,java,python,php,c# and many other languages, originally developed by Twitter.
Video
LIBVPX:VP8/VP9 encoding and decoding SDK
FFmpeg: A complete, cross-platform solution for recording, converting video and audio streams.
LIBDE265: The implementation of an open h.265 video codec.
OpenH264: Open source h.364 codec.
Theora: Free open source video compression format.
Virtual machines
Interesting VMs in Carpvm:c, let's take a look at this.
Micropython: Designed to realize python3.x on single chip microcomputer
TINYVM: A small, fast, lightweight virtual machine written in pure ANSI C.
Web application Framework
Civetweb: Provides an easy-to-use, powerful, C + + embedded Web server with optional CGI,SSL and LUA support.
CPPCMS: Free high-performance Web development framework (not CMS).
Crow: A C + + mini-Web framework (inspired by Python Flask)
Kore: An ultra-fast and flexible Web server/framework for Web applications developed using the C language.
Libonion: A lightweight library that helps you create a Web server using the C programming language.
Qdjango: The QT Library-based web framework, written in C + +, tries to emulate the Django API, so this name is used.
Wt: Developing a C + + library for Web applications.
Xml
XML is a garbage, XML parsing is annoying, it is a disaster for the computer. There is no reason for such a bad thing to exist at all. -linus Torvalds
EXPAT: XML parsing library written in C language
Libxml2:gnome XML C Parser and Toolkit
libxml++: XML parser for C + +
Pugixml: A lightweight, simple and fast XML parser for C + + that supports XPath.
Rapidxml: Try to create the fastest XML parser, while maintaining ease of use, portability, and reasonable compatibility.
TinyXML: A simple, small c++xml parser that can be easily integrated into other projects.
TinyXML2: A simple and fast C++CML parser that can be easily integrated into other projects.
Tinyxml++:tinyxml is a brand new interface that uses many of the many advantages of C + +, templates, exceptions and better exception handling.
Xerces-c++: XML validation parser written with a subset of portable C + +.
Multi-item Mixed
Some useful libraries or tools, but not suitable for the above categories, or not yet categorized.
Small, secure and fast format library for C + + format:c++
Casacore: A series of C + + core libraries derived from aips++
Cxx-prettyprint: Print library for C + + containers
Dynapdf: Easy-to-use PDF generation Library
Gcc-poison: A simple header file that helps developers to disallow unsafe C + + functions in an application.
Googlemock: Writing and using libraries for C + + impersonation classes
HTTP request/Response resolver for HTTP Parser:c
Libcpuid: Small C library for x86 CPU detection box feature extraction
Libevil: License Manager
LIBUSB: Universal USB library that allows mobile access to USB devices
PCRE: Regular expression C library, inspired by the functionality of the Perl Express expression.
Inter-process communication framework for Remote call framework:c++.
Scintilla: Open Source code-editing controls
Serial Communication library:c++ Language programming cross-platform, serial port library.
Sds:c's simple dynamic string library
SLDR: Ultra-Lightweight DNS resolver
SLRE: Ultra-lightweight regular expression library
Stage: Mobile robot simulator
Vartypes:c++/qt4 feature-rich, object-oriented management variable framework.
Zbar: ' Barcode scanner ' library, you can scan photos, pictures and barcodes in the video stream and return the results.
Cppverbalexpressions: Easy-to-use C + + regular expressions
Qtverbalexpressions: QT library based on C + + verbalexpressions Library
Php-cpp: Using C + + to build a library of PHP extensions
Another string library of Better String:c, which is richer, but has no buffer overflow problem, also contains a C + + wrapper.
Software
Software for creating a development environment
Compiler
C + + Compiler list
Clang: Developed by Apple Inc.
Gcc:gnu Compiler Collection
Intel C + + Compiler: Developed by Intel Corporation
LLVM: A collection of modular and reusable compilers and toolchain technologies
Microsoft Visual C + +: MSVC, developed by Microsoft Corporation
Open watcom:watcom,c,c++ and Fortran cross compilers and tools
TCC: Lightweight C-language compiler
Online compiler
On-line compiler list for C + +
Codepad: Online compiler/interpreter, a simple collaboration tool
Codetwist: A simple online compiler/interpreter that you can paste in c,c++ or Java code, execute online and view the results
Coliru: Online compiler/shell, support various C + + compilers
Compiler Explorer: Interactive compiler for assembly output
Compiling and executing C + + programs online on Compileonline:linux
Ideone: An online compiler and debugging tool that allows you to compile and execute your source code online, supporting more than 60 programming languages.
Debugger
List of C + + debuggers
Comparison of Debuggers: Debugger list from Wikipedia
GDB:GNU Debugger
Valgrind: Memory debugging, memory leak detection, performance analysis tools.
Integrated development Environment (IDE)
A list of integrated development environments for C + +
Appcode: Building an integrated development environment for Objective-c,c,c++,java and Java development on the JetBrains ' IntelliJ idea Platform
Clion: Integrated development environment for cross-platform C/D + + from JetBrains
Code::Blocks: Free c,c++ and FORTRAN integrated development environment
CodeLite: Another cross-platform, free, C + + integrated development environment
Dev-c++: Portable C/C++/C++11 integrated development environment
Eclipse CDT: Full-featured C and C + + integrated development environment based on the Eclipse platform
Geany: A lightweight, fast, cross-platform, integrated development environment.
IBM VisualAge: Home computer integrated development environment from IBM.
Irony-mode: A/C + + micro-mode for Emacs driven by Libclang
KDevelop: Free open source integrated development environment
Microsoft Visual Studio: An integrated development environment from Microsoft
NetBeans: An integrated development environment primarily for Java development, as well as other languages, especially php,c/c++ and HTML5.
QT Creator: A cross-platform C++,javascript and QML integrated development environment, also part of the QT SDK.
Rtags:c/c++ Client server index for integration with clang-based Emacs
Xcode: Developed by Apple Inc.
Youcompleteme: An engine for vim that quickly blurs a search and makes code completion based on the code you're knocking on.
Build the System
Bear: Tool for generating a compiled database for the Clang tool
Biicode: Simple file-based dependency manager.
CMake: Free, cross-platform, open source software is used to manage the process of building software using an independent compilation method.
CPM: C + + Package Manager based on CMake and Git
Fastbuild: High-performance, open-source build system that supports highly scalable compilation, buffering, and network distribution.
Ninja: A small build system focused on speed
SCons: Software build tool configured with Python Scipt
Tundra: High-performance code-building systems, even for very large software projects, provide the best incremental build times.
Tup: File-based build system for background monitoring of changing files.
Static code Analysis
List of code analysis tools to improve quality and reduce defects
Cppcheck: Static C + + code analysis tool
Include-what-you-use: Tools that use clang for code analysis can include in C and C + + files.
Oclint: Static source code analysis tool for c,c++ and objective-c to improve quality and reduce defects.
Clang Static Analyzer: Source Code analysis tool for finding bugs in c,c++ and objective-c programs
List of tools for static code analysis: A list of static Codes Analyzer tools from Wikipedia
Thank the ordinary road and Fffaraz, reproduced please indicate the source.
on how to improve the performance of Web server concurrency Next: Skip list jump table implementation
Recommended C/+ + frameworks and libraries