Bug 14035

Summary: master] icu-native fails to build on CentOS
Product: [Build System, Metadata & Runtime] OE-Core Reporter: akuster <akuster808>
Component: coreAssignee: akuster <akuster808>
Status: RESOLVED NOTABUG QA Contact:
Severity: normal    
Priority: Medium+ CC: meta.mr.watcher, meta.watcher, randy.macleod, workjagadeesh
Version: 3.2   
Target Milestone: 3.2 M4   
Hardware: x86   
OS: Multiple   
URL: https://errors.yoctoproject.org/Errors/Build/109491/
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: Don't know

Description akuster 2020-09-02 08:14:52 UTC
../../icu/source/common/utext.cpp:587:73: error: ‘max_align_t’ is not a member of ‘std’
|              spaceRequired = sizeof(ExtendedUText) + extraSpace - sizeof(std::max_align_t);
Comment 1 akuster 2020-09-02 08:18:22 UTC
I add CXXFLAGS_append_class-native = " -std=gnu99" & c99 but it dump a different set of errors.
Comment 2 Jagadeesh Krishnanjanappa 2020-09-25 02:36:16 UTC
Hi Armin,

In ICU 67.1 the deprecated C++ stddef.h has been replaced with cstddef header file and max_align_t is defined under std namespace.

The following commit has introduced this error.

https://github.com/unicode-org/icu/commit/a3078fb8c89b61c35ccebb04cf6b189bc81093b3.patch

If we revert that changes for CentOS 7.4 (which has g++ v4.8.5), then icu-native compiles.

Regards,
Jagadeesh
Comment 3 akuster 2020-10-22 08:01:35 UTC
this fails when buildtools is not installed.