CopperSpice Overview  1.5.1
Getting Started on Windows

CopperSpice is a set of libraries you can link with your C++ application to add functionality to your program. You do not need experience with other GUI libraries, however you will need to know or learn C++.

KitchenSink Demo

KitchenSink is a standalone program which combines multiple demos in one executable application. The purpose of KitchenSink is to demonstrate the capabilities and functionality of the CopperSpice libraries. These demos are basic examples and the code is intentionally simplistic and may not be fully optimized.

MSVC Support

We understand MSVC is a tool chain many developers use and it is our goal to support the CopperSpice libraries on MSVC.

Due to limitations of the Microsoft compiler we have been unable to build using MSVC. The C++ compiler (MSVC 2017 Update 3) appears to support the advanced features introduced in C++11, which CopperSpice requires. These are features like expression SFINAE and decltypes. Between recent contributions to CopperSpice and the new release of MSVC this area of incompatibility has been resolved.

There is currently one item which is still outstanding and blocking CopperSpice from seamlessly working with MSVC. CopperSpice uses the C++ Standard Library which reduces code duplication and is ultimately a good design. Microsoft made some choices in the past when implementing their compiler and standard library which results in an issue exporting STL classes between DLL files.

We have not exhausted all avenues and are working with some very talented developers to find the correct solution.

Writing Code on Windows

If you are a Windows developer you can use any programmers editor like Diamond, vi, or Emacs. You can also use Qt Creator to write your source code. There is a decent text editor in Qt Creator and a GUI drag and drop UI designer. In order to use Qt Creator you will need to configure a project toolchain. Refer to Qt Creator Toolchain for more about this toolchain.

Building CopperSpice and KitchenSink from Source

We support the two major build systems for C++ which are Autotools and CMake. You can use either one to build CopperSpice, KitchenSink, DoxyPress, or your own project.

You will need to install the MSYS utilities which will add various programs required for compiling. For more information refer to the section on MSYS Utilities.

You will also need to install a modern C++ compiler. The supported compiler on Windows is currently gcc. There are several versions to pick from and our suggestion is to use the version we used to build CopperSpice. Refer to MinGW for links to the 32-bit and 64-bit versions.

For more information refer to Building for Windows.