| Issue 203298: | buildbot and developer toolchains inconsistent on tegra2_seaboard at least | |
| 1 person starred this issue and may be notified of changes. | Back to list |
Sign in to add a comment
|
Trying to build locally with packages from the buildbots are failing: To setup: repo sync && build_packages To reproduce: emerge-tegra2_seaboard -g libcros emerge-tegra2_seaboard power_manager Notice the following failure: power_manager-0.0.1-r200: /usr/libexec/gcc/armv7a-cros-linux-gnueabi/ld: /build/tegra2_seaboard/usr/lib/libcrosapi.a(load.o): Unknown mandatory EABI object attribute 44 Rebuild libcros locally instead of using binary package: emerge-tegra2_seaboard libcros emerge-tegra2_seaboard power_manager It now builds successfully (without using cros_workon and from upstream sources). libXi2, libXtst and libgtk+ are also showing this error when linking against chromeos-chrome. This was initially attempted to be fixed by uprevving the broken packages to force a rebuild but that did not appear to fix the issue.
Sep 8, 2011
#1
kliegs@chromium.org
Cc:
adlr@chromium.org benc...@chromium.org vpala...@chromium.org yj...@chromium.org
Sep 8, 2011
Output requested: From upstream libcros: (cr) ((920482f...)) kliegs ~/trunk/src/scripts $ armv7a-cros-linux-gnueabi-readelf -A /build/tegra2_seaboard/usr/lib/libcrosapi.a File: /build/tegra2_seaboard/usr/lib/libcrosapi.a(load.o) Attribute Section: aeabi File Attributes Tag_CPU_name: "7-A" Tag_CPU_arch: v7 Tag_CPU_arch_profile: Application Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-2 Tag_VFP_arch: VFPv3-D16 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align8_needed: Yes Tag_ABI_align8_preserved: Yes, except leaf SP Tag_ABI_enum_size: int Tag_ABI_HardFP_use: SP and DP Tag_ABI_optimization_goals: Aggressive Speed Tag_unknown_44: 1 (0x1)
Sep 8, 2011
The normal output for libcrosapi compiled with the current toolchain is : File: /build/tegra2_kaen/usr/lib/libcrosapi.a(load.o) Attribute Section: aeabi File Attributes Tag_CPU_name: "7-A" Tag_CPU_arch: v7 Tag_CPU_arch_profile: Application Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-2 Tag_VFP_arch: VFPv3-D16 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align8_needed: Yes Tag_ABI_align8_preserved: Yes, except leaf SP Tag_ABI_enum_size: int Tag_ABI_HardFP_use: SP and DP Tag_ABI_optimization_goals: Aggressive Speed So this one has probably be compiled with another very recent toolchain (gcc 4.6 ?)
Sep 8, 2011
And when built locally: (cr) ((920482f...)) kliegs@~/trunk/src/scripts $ armv7a-cros-linux-gnueabi-readelf -A /build/tegra2_seaboard/usr/lib/libcrosapi.a File: /build/tegra2_seaboard/usr/lib/libcrosapi.a(load.o) Attribute Section: aeabi File Attributes Tag_CPU_name: "7-A" Tag_CPU_arch: v7 Tag_CPU_arch_profile: Application Tag_ARM_ISA_use: Yes Tag_THUMB_ISA_use: Thumb-2 Tag_VFP_arch: VFPv3-D16 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_denormal: Needed Tag_ABI_FP_exceptions: Needed Tag_ABI_FP_number_model: IEEE 754 Tag_ABI_align8_needed: Yes Tag_ABI_align8_preserved: Yes, except leaf SP Tag_ABI_enum_size: int Tag_ABI_HardFP_use: SP and DP Tag_ABI_optimization_goals: Aggressive Speed
Sep 8, 2011
According to binutils sources, the attribute 44 seems to be "use DIV" and is set by the compiler depending on the type of CPU. (should not be here for cortex A9)
Sep 8, 2011
After having check our binutils source, this flag is set in GAS for binutils 2.21 and is NOT set in current binutils (2.20.1.20100303) So this libcros binary has been compiled with new binutils 2.21
Sep 8, 2011
(No comment was entered for this change.)
Cc:
asha...@chromium.org raymes@chromium.org
Sep 8, 2011
I think this happened because the binary packages you downloaded were built with binutils-2.21. By mistake I submitted my binutils-2.21 upgrade CL on 9/6/2011 which was reverted on 9/7/2011. Binaries built by the buildbot during that period had that extra attribute. That CL is now reverted and hopefully the binaries that get downloaded when you now do ./build_packages --usepkg are built by binutils-2.20.
Sep 8, 2011
Commit: 17c8073112bed42c9b9a0d1be86ac59c6c0b7992 Email: davidjames@chromium.org Don't use binary packages for clobber builds. If a developer asked to clobber the build, really clobber it so as to allow for packages to be rebuilt completely from source. BUG=chromium-os:20207 TEST=Try preflight build with --clobber. Change-Id: I3c3f35d548618c359ca79c86e53570a1b7439d7b Reviewed-on: http://gerrit.chromium.org/gerrit/7445 Reviewed-by: Raymes Khoury <raymes@chromium.org> Reviewed-by: Chris Sosa <sosa@chromium.org> Tested-by: David James <davidjames@chromium.org> M buildbot/cbuildbot_stages.py
Sep 8, 2011
Commit: 454455c2cd1da496a5ba4d78326a9cce248b1293 Email: davidjames@chromium.org Remove broken binhosts built with new binutils. BUG=chromium-os:20207 TEST=Verify these binhosts are no longer used. Change-Id: Ie4bd4a0f3e2a9954520e40d6c7212f590c63e9f3 Reviewed-on: http://gerrit.chromium.org/gerrit/7458 Reviewed-by: Ryan Cui <rcui@chromium.org> Tested-by: David James <davidjames@chromium.org> M chromeos/binhost/target/tegra2-LATEST_RELEASE_CHROME_BINHOST.conf M chromeos/binhost/target/tegra2-PREFLIGHT_BINHOST.conf D chromeos/binhost/target/tegra2_dev-board-PREFLIGHT_BINHOST.conf
Sep 8, 2011
Commit: 7acec22d8a3727edf714ef05585959deb49da78f Email: davidjames@chromium.org Go back to a binhost from yesterday that has binutils 2.21. BUG=chromium-os:20207 TEST=Check that binutils-2.21 is installed with this binhost. Change-Id: I1b5c0c6d3d3a224d12c07e60288a23e0badaca95 Reviewed-on: http://gerrit.chromium.org/gerrit/7465 Reviewed-by: Raymes Khoury <raymes@chromium.org> Tested-by: David James <davidjames@chromium.org> M chromeos/config/make.conf.amd64-host
Sep 8, 2011
Okay, finally, issue is fixed! TL/DR: run build_packages and your build should work now. Detailed description: On Monday, asharif upgraded binutils to 2.21. Yesterday, he then downgraded binutils to 2.20 to prepare for R15 branch. This introduced an inconsistency where different builders and developers were stuck on different versions of binutils. This caused breakage in one situation: If you have binutils 2.20 and use a package built by binutils 2.21, your build will be broken. This turns out to affect all developers who have binutils 2.20 because the buildbot packages were built with binutils 2.21. Now that R15 is branched, asharif rolled forward to 2.21. To speed up the rollout I reverted the sdk binhost to one from yesterday that has 2.21. This should fix developer builds immediately if you run build_packages.
Status:
Fixed
Labels: Iteration-38
Sep 8, 2011
Thanks davidjames and raymes for addressing this.
Sep 13, 2011
(No comment was entered for this change.)
Labels:
FixedIn-0.16-1013.0
Sep 13, 2011
(No comment was entered for this change.)
Labels:
-FixedIn-0.16-1013.0
Sep 20, 2011
(No comment was entered for this change.)
Status:
Verified
Sep 20, 2011
(No comment was entered for this change.)
Labels:
FixedIn-0.16-1013.0
Oct 25, 2011
(No comment was entered for this change.)
Labels:
-FixedIn-0.16-1013.0 FixedIn-1013.0.0
Jan 13, 2012
(No comment was entered for this change.)
Summary:
buildbot and developer toolchains inconsistent on tegra2_seaboard at least
Jan 20, 2012
(No comment was entered for this change.)
Labels:
FixedInIndex-22
Mar 6, 2013
(No comment was entered for this change.)
Labels:
OS-Chrome
Mar 9, 2013
(No comment was entered for this change.)
Labels:
-Area-Build Build
|
||||||||||||
| ► Sign in to add a comment | |||||||||||||