cpp-library-project-template


C++ Library Project Template - A Quick Template for Creating a Cross-Platform C++ Library

C++ Library Project Template

NOTE: The C++ Application Project Template can be found here. Creating a new C++ project from scratch can involve a lot of tedium and overhead. The purpose of this project is to provide a template which can be easily modified to create your own C++ project with minimal effort. Key features of this template include: * Use of the CMake build system. * Makefile wrapper for invoking CMake. * Automatic configuration of files ending in: * ".in.h.cmake" * ".h.in.cmake" * Testing for and linking against the Boost C++ Libraries. * Testing for and linking against the Log4Cxx library. * Testing for and using the UnitTest++ unit test framework. * Standard, GNU-like project structure: * README * AUTHORS * INSTALL * ChangeLog * LICENSE * Makefile * src/ * test/ * ... * Automatic documentation targets * Automatic install targets * Automatically runs unittest++ unit tests after build.

This project template is "Public Domain" (Google will list it as licensed under the "New BSD License", simply because Google code does not have a "Public Domain" option). You may do whatever you want with the project template, and if you modify it, you can apply whatever license you want to the modified version (as long as you don't try to take this, original, project template out of the public domain). It would be nice if you would spread the word about this project template and point people to the original source of the project template (maybe give me some credit), but that isn't required. Hopefully this template will save you some time.

Application vs. Library

This C++ Library Project Template is intended for building a C++ library. To build a C++ application, please use the C++ Project Template.

Programming Language

The C++ Project Template and C++ Library Project Template have a corresponding Java Project Template and Java Library Project Template.

Development Environment Setup

Directions for setting up a C/C++ development environment for using this template are given at this link.

Feedback and Bug Reports

Please contact Michael Safyan (see the contact page) to send feedback or file a bug report.

Project Information

Labels:
CPlusPlus Project Template Library C Cpp Cxx Boost Log4Cxx GNU Standard