Giter Site home page Giter Site logo

woozoo86 / corrade Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mosra/corrade

0.0 2.0 0.0 5.61 MB

C++11/C++14 multiplatform utility library

Home Page: http://magnum.graphics/corrade/

License: Other

CMake 10.23% Shell 1.10% Batchfile 0.24% Makefile 0.05% Ruby 0.04% C++ 87.53% C 0.80%

corrade's Introduction

corrade (v.) — "To scrape together, to gather together from various sources"

Corrade is a multiplatform utility library written in C++11/C++14. It's used as a base for the Magnum graphics engine, among other things.

Join the chat at https://gitter.im/mosra/magnum Build Status Build Status Coverage Status

SUPPORTED PLATFORMS

See the Magnum Project Build Status page for detailed per-platform build status.

FEATURES

  • Low-level utilities to bridge platform differences when accessing OS functionality, filesystem, console and environment
  • Lightweight container implementations, complementing STL features with focus on compilation speed, ease of use and performance
  • Test framework emphasizing flexibility, extensibility, minimal use of macros and clarity of diagnostic output
  • Plugin management library with static and dynamic plugins, dependency handling and hot code reload
  • Signal/slot connection library with full type safety

Check also the Magnum Project Feature Overview pages for further information.

BUILDING CORRADE

You can either use packaging scripts, which are stored in the package/ subdirectory, or compile and install everything manually. A short guide is below, for complete documentation for all platforms head over to the Corrade documentation.

Minimal dependencies

  • C++ compiler with good C++11 support. Compilers which are tested to have everything needed are GCC >= 4.7, Clang >= 3.1 and MSVC >= 2015. For Windows you can also use MinGW-w64.
  • CMake >= 2.8.12

Compilation, installation

The library can be built and installed using these commands:

git clone git://github.com/mosra/corrade && cd corrade
mkdir -p build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
make -j
make install # sudo may be required

Building and running unit tests

If you want to build also unit tests (which are not built by default), pass -DBUILD_TESTS=ON to CMake. Unit tests use Corrade's own TestSuite framework and can be run using

ctest --output-on-failure

in build directory. Everything should pass ;)

Building documentation

The documentation is written using Doxygen. It can be built by running

doxygen

in the root directory (i.e. where Doxyfile is). Resulting HTML documentation will be in the build/doc/ directory. You may need to create the build/ directory if it doesn't exist yet. Snapshot of the documentation is also available for online viewing.

EXAMPLES AND TUTORIALS

The best way to get started is to read some examples and tutorials. Sources for them are contained in the src/examples directory and are built separately, requiring Corrade to be installed:

mkdir -p build-examples
cd build-examples
cmake ../src/examples
make -j

CONTACT & SUPPORT

If you want to contribute to Corrade, if you spotted a bug, need a feature or have an awesome idea, you can get a copy of the sources from GitHub and start right away! There is the already mentioned guide about how to download and build Corrade and also a guide about coding style and best practices which you should follow to keep the library as consistent and maintainable as possible.

See also the Magnum Project Contact & Support page for further information.

CREDITS

See the CREDITS.md file for details. Big thanks to everyone involved!

LICENSE

Corrade is licensed under the MIT/Expat license, see the COPYING file for details.

corrade's People

Contributors

mosra avatar squareys avatar chris-chambers avatar davll avatar mdietsch avatar lb-- avatar olga-python avatar sigman78 avatar xantares avatar

Watchers

James Cloos avatar WooZoo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.