README.md (3083B)
1 # yaml-cpp [](https://travis-ci.org/jbeder/yaml-cpp) [](https://codedocs.xyz/jbeder/yaml-cpp/) 2 3 yaml-cpp is a [YAML](http://www.yaml.org/) parser and emitter in C++ matching the [YAML 1.2 spec](http://www.yaml.org/spec/1.2/spec.html). 4 5 To get a feel for how it can be used, see the [Tutorial](https://github.com/jbeder/yaml-cpp/wiki/Tutorial) or [How to Emit YAML](https://github.com/jbeder/yaml-cpp/wiki/How-To-Emit-YAML). For the old API (version < 0.5.0), see [How To Parse A Document](https://github.com/jbeder/yaml-cpp/wiki/How-To-Parse-A-Document-(Old-API)). 6 7 # Problems? # 8 9 If you find a bug, post an [issue](https://github.com/jbeder/yaml-cpp/issues)! If you have questions about how to use yaml-cpp, please post it on http://stackoverflow.com and tag it [`yaml-cpp`](http://stackoverflow.com/questions/tagged/yaml-cpp). 10 11 # How to Build # 12 13 yaml-cpp uses [CMake](http://www.cmake.org) to support cross-platform building. The basic steps to build are: 14 15 1. Download and install [CMake](http://www.cmake.org) (Resources -> Download). 16 17 **Note:** If you don't use the provided installer for your platform, make sure that you add CMake's bin folder to your path. 18 19 2. Navigate into the source directory, and type: 20 21 ``` 22 mkdir build 23 cd build 24 ``` 25 26 3. Run CMake. The basic syntax is: 27 28 ``` 29 cmake [-G generator] [-DYAML_BUILD_SHARED_LIBS=ON|OFF] .. 30 ``` 31 32 * The `generator` is whatever type of build system you'd like to use. To see a full list of generators on your platform, just run `cmake` (with no arguments). For example: 33 * On Windows, you might use "Visual Studio 12 2013" to generate a Visual Studio 2013 solution or "Visual Studio 14 2015 Win64" to generate a 64-bit Visual Studio 2015 solution. 34 * On OS X, you might use "Xcode" to generate an Xcode project 35 * On a UNIX-y system, simply omit the option to generate a makefile 36 37 * yaml-cpp defaults to building a static library, but you may build a shared library by specifying `-DYAML_BUILD_SHARED_LIBS=ON`. 38 39 * For more options on customizing the build, see the [CMakeLists.txt](https://github.com/jbeder/yaml-cpp/blob/master/CMakeLists.txt) file. 40 41 4. Build it! 42 43 5. To clean up, just remove the `build` directory. 44 45 # Recent Release # 46 47 [yaml-cpp 0.6.0](https://github.com/jbeder/yaml-cpp/releases/tag/yaml-cpp-0.6.0) has been released! This release requires C++11, and no longer depends on Boost. 48 49 [yaml-cpp 0.3.0](https://github.com/jbeder/yaml-cpp/releases/tag/release-0.3.0) is still available if you want the old API. 50 51 **The old API will continue to be supported, and will still receive bugfixes!** The 0.3.x and 0.4.x versions will be old API releases, and 0.5.x and above will all be new API releases. 52 53 # API Documentation 54 55 The autogenerated API reference is hosted on [CodeDocs](https://codedocs.xyz/jbeder/yaml-cpp/index.html) 56 57 # Third Party Integrations 58 59 The following projects are not officially supported: 60 61 - [Qt wrapper](https://gist.github.com/brcha/d392b2fe5f1e427cc8a6)