Bug 13671

Summary: uninative: cmake-native: libstdc++.so.6: version `GLIBCXX_3.4.26' not found
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Dominik Wójt <domin144>
Component: devtools / tool chainAssignee: Paul Eggleton <bluelightning>
Status: RESOLVED OBSOLETE QA Contact:
Severity: normal    
Priority: Undecided CC: domin144, meta.mr.watcher, meta.watcher, richard.purdie
Version: unspecified   
Target Milestone: ---   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Dominik Wójt 2019-12-04 10:44:14 UTC
Preconditions/Environment
-------------------------
poky, sumo
host machine with gcc 9.2.1

Triggering Action/Cause
-----------------------
bitbake cmake-native

Expectation
-----------
Build success.

Actual Result
-------------
/home/dwojt/scratch/mpi-components-aggregator/mpi-build-environment/build/tmp/work/x86_64-linux/cmake-native/3.10.3-r0/build/Bootstrap.cmk/cmake: /home/dwojt/scratch/mpi-components-aggregator/mpi-build-environment/build/tmp/sysroots-uninative/x86_64-linux/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/dwojt/scratch/mpi-components-aggregator/mpi-build-environment/build/tmp/work/x86_64-linux/cmake-native/3.10.3-r0/build/Bootstrap.cmk/cmake)

Reproducibility
---------------
always

Details
-------
The issue seems to be caused by GLIBCXX version required by executables built by gcc 9 to be more recent than the one provided by uninative. The mechanism for disabling uninative only checks for GLIBC verion on host machine to be more recent than UNINATIVE_MAXGLIBCVERSION, GLIBCXX is not checked.
Poky versions:
UNINATIVE_MAXGLIBCVERSION 2.29
libstdc++.so.6: GLIBCXX_3.4.25
Host versions:
GLIBC 2.29
libstdc++.so.6: GLIBCXX_3.4.28

Possible solution could be to include something like UNINATIVE_MAXGLIBCXXVERSION in uninative.bbclass and yocto-uninative.inc.
Comment 1 Richard Purdie 2019-12-04 11:55:06 UTC
Upgrading uninative in sumo would likely fix this FWIW as there are newer uninative releases which address this issue.
Comment 2 Richard Purdie 2019-12-05 16:04:21 UTC
Unfortunately sumo is outside our support window now so we don't track/work on these bugs. I believe upgrading uninative to a new version would solve the problem though and should be straightforward.