The Code Vault is a cross-platform C++ foundation library. Its first aim is to help you avoid the hassles of developing C++ code that works on different platforms, compiled by different compilers, and referencing different standard library implementations. Its second, larger aim is to provide a solid, pleasant, understandable object-oriented library of classes that implement a variety of fundamental services not provided by the language or standard library, and services which vary on each native platform (such as threading, file access, socket i/o, time functions, strings, logging, messaging, session management, etc.).
The Code Vault has only one external dependency, and that is "smart pointers". This means that you either need to be using a C++11 compiler (which supplies std::shared_ptr and related classes) or you need to have the Boost library (which supplies boost::shared_ptr). If using a C++11 compiler, you don't have to do anything; if using Boost, then you must uncomment the symbol definition "VAULT_BOOST_SHARED_PTR_INCLUDE" in vconfigure.h to tell Vault to include the requisite Boost headers; and you need to have the Boost include directory in your project include paths.
For Mac OS X: open, build, and run the sample Xcode IDE project located at: extras/test_projects/mac/VaultPlatformCheck.xcodeproj
For Windows: open, build, and run the sample Visual Studio IDE project located at: extras/test_projects/win/VaultPlatformCheck.sln
Until a sample Makefile is provided, for Linux you currently need to create a Makefile that references all of the .cpp and .h files except those in '_mac' or '_win' subdirectories. The same approach can be used for Makefile-oriented builds on Mac OS X and Windows.
The sample project has a main function from the 'unittest' subdirectory containing the supplied unit tests, so running the built application perform's the Vault's self-tests. You can replace the file 'vplatformcheck_main.cpp' with your own main, remove the 'unittest' folder from the project (unless you wish to keep and call the unit tests), and then add your own source code to the project.
Please refer to the latest documentation for complete information and instructions: http://www.bombaydigital.com/vault/