jbcjorge n00b
Joined: 05 Aug 2007 Posts: 56 Location: México
|
Posted: Tue May 07, 2019 5:46 pm Post subject: [Solved] Compile kernel with GCC 9.1 failing |
|
|
For those who have been having issues with the compiling of a kernel with GCC 9.1 (in my case 5.0.13) and have seen this error
Code: | CC arch/x86/kernel/head64.o
during GIMPLE pass: wrestrict
En la función ‘copy_bootdata’:
en pp_format, en pretty-print.c:1393
377 | static void __init copy_bootdata(char *real_mode_data)
| ^~~~~~~~~~~~~
Por favor, envíe un informe completo de errores,
con el código preprocesado si es apropiado.
Véase <https://bugs.gentoo.org/> para instrucciones.
make[2]: *** [scripts/Makefile.build:277: arch/x86/kernel/head64.o] Error 1
make[1]: *** [scripts/Makefile.build:492: arch/x86/kernel] Error 2
make: *** [Makefile:1067: arch/x86] Error 2
Error compiling the kernel
|
I have a workaround, which is simply change the LANG enviroment variable.
As the function where it fails is related to the printing with format (and I assume this change with the locale) having the LANG in spanish appears to be what triggers this issue.
My usual locale is
Code: | locale
LANG=es_MX.UTF-8
LC_CTYPE="es_MX.UTF-8"
LC_NUMERIC="es_MX.UTF-8"
LC_TIME="es_MX.UTF-8"
LC_COLLATE="es_MX.UTF-8"
LC_MONETARY="es_MX.UTF-8"
LC_MESSAGES="es_MX.UTF-8"
LC_PAPER="es_MX.UTF-8"
LC_NAME="es_MX.UTF-8"
LC_ADDRESS="es_MX.UTF-8"
LC_TELEPHONE="es_MX.UTF-8"
LC_MEASUREMENT="es_MX.UTF-8"
LC_IDENTIFICATION="es_MX.UTF-8"
LC_ALL=
|
Changing it to
Code: | locale
LANG=en_US.utf8
LC_CTYPE=en_US.utf8
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=
|
allowed me to compile the kernel without problems _________________ Thinkpad P50 ~amd64 |
|