[U-Boot] (no subject)

Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04LTS and 19.04.
Though both 7.3.0 and 8.1.0 have arc and nds32 compilers, the following errors were generated on Ubuntu 19.04.
arc: + iot_devkit +arc-linux-ld.bfd: error: examples/standalone/hello_world: unable to merge CPU base attributes ARC7xx with ARCEM. + +arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_st.o) +arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_ret.o) +make[3]: *** [examples/standalone/Makefile:62: examples/standalone/hello_world] Error 1 +make[2]: *** [scripts/Makefile.build:432: examples/standalone] Error 2 +make[1]: *** [Makefile:1594: examples] Error 2 +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ae3xx +nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ag101p +nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
x86: + efi-x86_app +{standard input}: Assembler messages: +{standard input}:21695: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21740: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21695: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +{standard input}:21740: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +make[2]: *** [scripts/Makefile.build:279: common/image.o] Error 1 +make[1]: *** [Makefile:1594: common] Error 2 +make: *** [Makefile:148: sub-make] Error 2

Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04 and 19.04.
Signed-off-by: Thomas Chou thomas@wytron.com.tw --- tools/buildman/toolchain.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/buildman/toolchain.py b/tools/buildman/toolchain.py index a65737fdf8..3ad18c472e 100644 --- a/tools/buildman/toolchain.py +++ b/tools/buildman/toolchain.py @@ -460,7 +460,7 @@ class Toolchains: """ arch = command.OutputOneLine('uname', '-m') base = 'https://www.kernel.org/pub/tools/crosstool/files/bin' - versions = ['7.3.0', '6.4.0', '4.9.4'] + versions = ['8.1.0', '7.3.0', '6.4.0', '4.9.4'] links = [] for version in versions: url = '%s/%s/%s/' % (base, arch, version)

Hi Thomas,
On Sun, Jun 30, 2019 at 10:07 AM Thomas Chou thomas@wytron.com.tw wrote:
Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04 and 19.04.
We should fix all issues before we turn on the 8.1 for buildman, otherwise the travis-ci will break.
Signed-off-by: Thomas Chou thomas@wytron.com.tw
tools/buildman/toolchain.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Regards, Bin

On Sun, Jun 30, 2019 at 10:07 AM Thomas Chou thomas@wytron.com.tw wrote:
Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04LTS and 19.04.
Though both 7.3.0 and 8.1.0 have arc and nds32 compilers, the following errors were generated on Ubuntu 19.04.
arc: + iot_devkit
+arc-linux-ld.bfd: error: examples/standalone/hello_world: unable to merge CPU base attributes ARC7xx with ARCEM.
+arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_st.o) +arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_ret.o) +make[3]: *** [examples/standalone/Makefile:62: examples/standalone/hello_world] Error 1 +make[2]: *** [scripts/Makefile.build:432: examples/standalone] Error 2 +make[1]: *** [Makefile:1594: examples] Error 2 +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ae3xx
+nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ag101p
+nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
x86: + efi-x86_app
+{standard input}: Assembler messages: +{standard input}:21695: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21740: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21695: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +{standard input}:21740: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +make[2]: *** [scripts/Makefile.build:279: common/image.o] Error 1 +make[1]: *** [Makefile:1594: common] Error 2 +make: *** [Makefile:148: sub-make] Error 2
For the x86 failure, it is a known regression issue of GCC 8.
Regards, Bin

On Sun, Jun 30, 2019 at 06:31:10PM +0800, Bin Meng wrote:
On Sun, Jun 30, 2019 at 10:07 AM Thomas Chou thomas@wytron.com.tw wrote:
Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04LTS and 19.04.
Though both 7.3.0 and 8.1.0 have arc and nds32 compilers, the following errors were generated on Ubuntu 19.04.
arc: + iot_devkit
+arc-linux-ld.bfd: error: examples/standalone/hello_world: unable to merge CPU base attributes ARC7xx with ARCEM.
+arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_st.o) +arc-linux-ld.bfd: failed to merge target specific data of file /home/thomas/.buildman-toolchains/gcc-8.1.0-nolibc/arc-linux/bin/../lib/gcc/arc-linux/8.1.0/libgcc.a(_millicodethunk_ret.o) +make[3]: *** [examples/standalone/Makefile:62: examples/standalone/hello_world] Error 1 +make[2]: *** [scripts/Makefile.build:432: examples/standalone] Error 2 +make[1]: *** [Makefile:1594: examples] Error 2 +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ae3xx
+nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
nds32: + adp-ag101p
+nds32le-elf-gcc: error: unrecognized command line option '-mno-ext-fpu-dp' +nds32le-elf-gcc: error: unrecognized command line option '-mfloat-abi=soft' +make[2]: *** [scripts/Makefile.autoconf:77: u-boot.cfg] Error 1 +make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'. Stop. +make: *** [Makefile:148: sub-make] Error 2
x86: + efi-x86_app
+{standard input}: Assembler messages: +{standard input}:21695: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21740: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21695: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +{standard input}:21740: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +make[2]: *** [scripts/Makefile.build:279: common/image.o] Error 1 +make[1]: *** [Makefile:1594: common] Error 2 +make: *** [Makefile:148: sub-make] Error 2
For the x86 failure, it is a known regression issue of GCC 8.
Unfortunately the kernel.org gcc-8.1 toolchain just isn't usable for us due to a number of later-fixed regressions. We need to use gcc-8.3, I think, for something that should work again everywhere. And when I last looked (mid-May, from my WIP branch) while I could get gcc-8.3 for ARM I couldn't find one for x86. The Bootlin toolchains are only 8.2 and that's not new enough to have the problem Bin notes as a regression fixed.

Hi Tom,
On 7/1/19 9:19 PM, Tom Rini wrote:
On Sun, Jun 30, 2019 at 06:31:10PM +0800, Bin Meng wrote: Unfortunately the kernel.org gcc-8.1 toolchain just isn't usable for us due to a number of later-fixed regressions. We need to use gcc-8.3, I think, for something that should work again everywhere. And when I last looked (mid-May, from my WIP branch) while I could get gcc-8.3 for ARM I couldn't find one for x86. The Bootlin toolchains are only 8.2 and that's not new enough to have the problem Bin notes as a regression fixed.
Agree. We shall wait until they are ready.
Cheers, Thomas

Hi Bin,
On 6/30/19 6:31 PM, Bin Meng wrote:
On Sun, Jun 30, 2019 at 10:07 AM Thomas Chou thomas@wytron.com.tw wrote:
x86: + efi-x86_app
+{standard input}: Assembler messages: +{standard input}:21695: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21740: Error: junk at end of line, first unrecognized character is `@' +{standard input}:21695: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +{standard input}:21740: Error: can't resolve `end.7382' {.u_boot_list_2_fit_loadable_3 section} - `start.7379' {.u_boot_list_2_fit_loadable_1 section} +make[2]: *** [scripts/Makefile.build:279: common/image.o] Error 1 +make[1]: *** [Makefile:1594: common] Error 2 +make: *** [Makefile:148: sub-make] Error 2
For the x86 failure, it is a known regression issue of GCC 8.
Regards, Bin
Good to know. Thanks.
Thomas

On 7/1/19 9:20 PM, Tom Rini wrote:
On Sun, Jun 30, 2019 at 10:06:35AM +0800, Thomas Chou wrote:
Add gcc-8.1.0 support to buildman toolchain.
The old gcc-7.3.0 has shared libraries issues on Ubuntu 18.04LTS and 19.04.
Can you not resolve those shared library issues via one of the toolchain PPAs ?
I switched to Fedora 30, which does not have such shared libraries issues. Fedora has more cross compiler supported, with gcc-9. I am trying them, and will feedback later.
Cheers, Thomas
participants (3)
-
Bin Meng
-
Thomas Chou
-
Tom Rini