Установка GCC6.3.0 для MATLAB на ubuntu20.04

Я пытаюсь собрать GCC6.3.0 на Ubuntu20.04 и не могу понять / исправить

Я загрузил tar-файл (пробовал с нескольких зеркал, всегда одна и та же ошибка), распаковал его, в этом незащищенном каталоге запустил

./contrib/download_prerequisites

, он загружает и создает необходимые ярлыки. Затем я выхожу из этого каталога, создаю новый каталог «gccbuild», в нем запускаю

$PWD/../gcc-6.3.0/configure --prefix=$HOME/GCC-6.3.0 --enable-languages=c,c++,fortran,go

. Я могу добавить полный вывод, если требуется, много «нет», но я не думаю, что это проблема. Последние строки вывода:

checking where to find the target windmc... host tool
checking whether to enable maintainer-specific portions of Makefiles... no
configure: creating ./config.status
config.status: creating Makefile

Затем я запускаю make, и следующие несколько последних строк вывода:

 /home/m/GCC-6.3.0/x86_64-pc-linux-gnu/include -isystem /home/m/GCC-6.3.0/x86_64-pc-linux-gnu/sys-include -g -O2 -O2 -g -O2 -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -mlong-double-80 -DUSE_ELF_SYMVER -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -mlong-double-80 -DUSE_ELF_SYMVER -I. -I. -I../.././gcc -I/home/m/gccbuild/../gcc-6.3.0/libgcc -I/home/m/gccbuild/../gcc-6.3.0/libgcc/. -I/home/m/gccbuild/../gcc-6.3.0/libgcc/../gcc -I/home/m/gccbuild/../gcc-6.3.0/libgcc/../include -I/home/m/gccbuild/../gcc-6.3.0/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o _fixunssfsi.o -MT _fixunssfsi.o -MD -MP -MF _fixunssfsi.dep -DL_fixunssfsi -c /home/m/gccbuild/../gcc-6.3.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS

make[5]: Leaving directory '/home/m/gccbuild/x86_64-pc-linux-gnu/32/libgcc'

make[4]: *** [Makefile:1161: multi-do] Error 1

make[4]: Leaving directory '/home/m/gccbuild/x86_64-pc-linux-gnu/libgcc'

make[3]: *** [Makefile:120: all-multi] Error 2

make[3]: *** Waiting for unfinished jobs....

make[3]: Leaving directory '/home/m/gccbuild/x86_64-pc-linux-gnu/libgcc'

make[2]: *** [Makefile:20436: all-stage1-target-libgcc] Error 2

make[2]: Leaving directory '/home/m/gccbuild'

make[1]: *** [Makefile:25715: stage1-bubble] Error 2

Мы будем очень признательны за любые выводы!

РЕДАКТИРОВАТЬ

Я пропустил часть фактической ошибки (спасибо Стефану Рингу из списка рассылки gcc-help):

In file included from ../../../../gcc-6.3.0/libgcc/unwind-dw2.c:401:0:
./md-unwind-support.h: In function 'x86_fallback_frame_state':
./md-unwind-support.h:141:18: error: field 'uc' has incomplete type
  struct ucontext uc;
              ^~
0
задан 18 August 2020 в 13:46

1 ответ

В вашей команде "find" в пункте 1 отсутствует часть действия :) (поэтому она использует действие по умолчанию -print ). Добавьте действие для сжатия найденных файлов, например:

find / var / wbp / v3-iaasstage / dataArea -name "generic_log_ *" -type f -mtime +547 -exec gzip {} \;

This будет только сжатие файлов, не перечисляя их. Если вы хотите как перечислить файлы, так и сжать их, вы можете объединить оба действия следующим образом:

find / var / wbp / v3-iaasstage / dataArea -name "generic_log_ *" -type f -mtime +547 -print - exec gzip {} \; был нарушен из-за изменения в glibc, когда glibc стал строже.

Вы можете исправить это, заменив "struct ucontext" на "ucontext_t" в соответствующие файлы. "

Итак, как отмечено в этот ответ на переполнение стека , я исправил его, заменив ucontext на ucontext_t в строках 61 и 141 файла ] builddir / libgcc / config / i386 / linux_unwind.h .

0
ответ дан 21 August 2020 в 07:57

Другие вопросы по тегам:

Похожие вопросы: