Skip to content

Build with C++17 so the bridge compiles against JSBSim 1.3#18

Open
Blandingo wants to merge 1 commit into
PX4:masterfrom
Blandingo:build-with-cxx17
Open

Build with C++17 so the bridge compiles against JSBSim 1.3#18
Blandingo wants to merge 1 commit into
PX4:masterfrom
Blandingo:build-with-cxx17

Conversation

@Blandingo

Copy link
Copy Markdown

Problem

JSBSim 1.3.x headers use C++17 library features — e.g. std::is_enum_v in input_output/FGPropertyManager.h — so compiling the bridge against any current JSBSim release fails while CMAKE_CXX_FLAGS pins -std=c++14:

FGPropertyManager.h:263:36: error: 'is_enum_v' is not a member of 'std'; did you mean 'is_enum'?

Fix

Raise the standard to C++17 in CMakeLists.txt. No source changes are needed; the bridge sources compile unchanged.

Validation

Built and flown against JSBSim v1.3.1 in a PX4 v1.17.0 SITL lockstep pipeline (fixed-wing catapult-launch scenario); our smoke and flight-metric gates pass with the bridge built as C++17 against both JSBSim v1.2.3 and v1.3.1.

Independent of #17, applies cleanly either way.

JSBSim 1.3.x headers use C++17 library features (std::is_enum_v in
FGPropertyManager.h), so building the bridge against a current JSBSim
release fails while CMAKE_CXX_FLAGS pins -std=c++14. Raise the standard
to C++17; no source changes are needed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant