-
Notifications
You must be signed in to change notification settings - Fork 30
Travis Notes
These are notes (to remind me!) of the various issues when trying to use Travis for this project. Setting up Travis for modern C++1y is a PITA.
Default clang and GCC compiler versions are old. Need to update and explicitly specify versions using matrix include
options. See complex example.
E.g. <codecvt>
Unicode support. This is implemented on libc++, but varies on libstdc++.
-
libc++
- the new library effort by LLVM to write C++ standard library in C++1y. -
libstdc++
- the older C++03 C++ standard library.
OSX has very good C++1y support through AppleClang. Linux is spotty in some areas. Trying to mix the two is problematic and I think causes link errors.
Travis sets CXX
as the compiler family, i.e. g++-5 is simplified to g++. This is not clear in any documentation and can only really be seen the Ruby source. This is no use as the compiler version you want is ignored. Currently passing the COMPILER
variable to cmake (by setting CXX
myself) to make sure we get the correct compiler.