Supported Compilers¶
Compilers with complete C++11 support should compile the library without warnings.
Actually, fkYAML is compiled and tested with 40+ different C++ compilers with different operating systems and C++ standards in GitHub Actions workflows.
Requests for new compiler supports are welcome.
If you encounter a problem regarding compilers, please let us know by creating an issue or a PR with the information of your Operating System so that the same issue can be reproduced.
| Compiler | Operating System |
|---|---|
| AppleClang 15.0.0 | macOS 14 |
| AppleClang 16.0.0 | macOS 15 |
| AppleClang 17.0.0 | macOS 15 |
| AppleClang 17.0.0 | macOS 26 |
| AppleClang 21.0.0 | macOS 26 |
| Clang 3.4.2 | Ubuntu 24.04 |
| Clang 3.5.2 | Ubuntu 24.04 |
| Clang 3.6.2 | Ubuntu 24.04 |
| Clang 3.7.1 | Ubuntu 24.04 |
| Clang 3.8.1 | Ubuntu 24.04 |
| Clang 3.9.1 | Ubuntu 24.04 |
| Clang 4.0.1 | Ubuntu 24.04 |
| Clang 5.0.2 | Ubuntu 24.04 |
| Clang 6.0.1 | Ubuntu 24.04 |
| Clang 7.1.0 | Ubuntu 24.04 |
| Clang 9.0.1 | Ubuntu 24.04 |
| Clang 10.0.1 | Ubuntu 24.04 |
| Clang 11.1.0 | Ubuntu 24.04 |
| Clang 12.0.1 | Ubuntu 24.04 |
| Clang 13.0.1 | Ubuntu 24.04 |
| Clang 14.0.6 | Ubuntu 24.04 |
| Clang 15.0.7 | Ubuntu 24.04 |
| Clang 16.0.6 | Ubuntu 24.04 |
| Clang 17.0.6 | Ubuntu 24.04 |
| Clang 18.1.6 | Ubuntu 24.04 |
| Clang 19.1.4 | Ubuntu 24.04 |
| Clang 20.1.8 | Ubuntu 24.04 |
| Clang 21.1.8 | Ubuntu 24.04 |
| GCC 5.3.1 | Ubuntu 24.04 |
| GCC 6.4.0 | Ubuntu 24.04 |
| GCC 7.5.0 | Ubuntu 24.04 |
| GCC 8.5.0 | Ubuntu 24.04 |
| GCC 9.5.0 | Ubuntu 24.04 |
| GCC 10.5.0 | Ubuntu 24.04 |
| GCC 11.4.0 | Ubuntu 24.04 |
| GCC 12.3.0 | Ubuntu 24.04 |
| GCC 13.3.0 | Ubuntu 24.04 |
| GCC 14.2.0 | Ubuntu 24.04 |
| GCC 15.3.0 | Ubuntu 24.04 |
| GCC 16.1.0 | Ubuntu 24.04 |
| IntelLLVM 2026.1.0 | Ubuntu 24.04 |
| GCC 14.2.0 | Windows Server 2022 |
| GCC 15.2.0 | Windows Server 2025 |
| Visual Studio 17 2022 | Windows Server 2022 |
| Visual Studio 18 2026 | Windows Server 2025 |
Android NDK¶
Android NDK builds are tested with the following configurations in the Android workflow:
| NDK | ABIs |
|---|---|
r25c (25.2.9519653) |
armeabi-v7a, arm64-v8a, x86, x86_64 |
r27c (27.2.12479018) |
armeabi-v7a, arm64-v8a, x86, x86_64 |
r30 (30.0.16248370) |
armeabi-v7a, arm64-v8a, x86, x86_64 |
The C++ unit tests are also executed on x86_64 Android emulators using NDK r25c with API level 21 and NDK r30 with API level 35. Other ABI configurations are verified by cross-compiling the same unit-test executable.