| Summary: | perl-native embeds host-dependent variables in sysroot | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Joshua Lock <joshuagloe> |
| Component: | core | Assignee: | Aníbal Limón <anibal.limon> |
| Status: | RESOLVED FIXED | QA Contact: | David Lopez Barriba <davidx.lopez.barriba> |
| Severity: | normal | ||
| Priority: | Medium+ | CC: | eduard.bartosh, jose.perez.carranza, leonardo.sandoval.gonzalez, meta.mr.watcher, meta.watcher, ross.burton |
| Version: | 2.2 | ||
| Target Milestone: | 2.3 M2 | ||
| Hardware: | All | ||
| OS: | Multiple | ||
| URL: | http://errors.yoctoproject.org/Errors/Details/109589/ | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
|
Description
Joshua Lock
2016-09-28 08:47:18 UTC
So what happens here is that perl-native compiles on a machine with a host GCC that supports -fstack-protector=strong, and it embeds that option into usr/lib/perl-native/perl/config.sh (and more) in the native sysroot. One of these files is then used by makemaker to determine what options to use when building. This failure happens if perl-native comes from sstate via a machine which supports -fstack-protector=strong but the machine building say libperl-parser-xml-native has an older GCC release which does not support it. I guess we should strip these options out post-configure in native builds? Frantically reassigning to Anibal as he is the perl maintainer. I hit this error on local AB, i will try to fix avoiding usage of -fstack-protector=strong or add a test to review if it's supported. Patch sent for review, http://lists.openembedded.org/pipermail/openembedded-core/2016-December/129528.html There is other patch that also fixes the problem but currently brokes eSDK so waiting to be merge, http://lists.openembedded.org/pipermail/openembedded-core/2016-November/128510.html This patch [1] solves the issue because the sstate generated is different in gcc < 4.9 and > 4.9. [1] http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=c21cec84886d9c70396e9be0ceb9a8ef300b54be |