Проблема при сборке компилятора GCC - PullRequest
0 голосов
/ 12 сентября 2018

Итак, я пытаюсь собрать компилятор GCC (8.1.0) из исходного кода, и я столкнулся с проблемой. Я пытаюсь собрать его на Windows 7, и сначала я попытался собрать версию 8.2.0 и столкнулся с точной проблемой с текущей версией, которую я пытаюсь собрать (понял, поскольку версия 8.2.0 вышла 26 июля, два за несколько недель до публикации этого вопроса у него была проблема :)).

Первое, что я делаю, это конфигурирую для процесса сборки следующее:

configure --program-suffix=-8.1.0. --enable-languages=c --disable-bootstrap --disable-shared --prefix="C:\Users\Vuk\Desktop\Diplomski\gcc-8.1.0\objdir"

Я ранее создал каталог objdir, как это рекомендовано официальным руководством . В котором я планирую хранить встроенный компилятор.

После предыдущего шага я запускаю:

make -j4

, что приводит к нескольким минутам компиляции и появлению первого сообщения об ошибке:

    ../../intl/localealias.c: In function ‘_nl_expand_alias’:
../../intl/localealias.c:164:25: error: incomplete universal character name \U
     locale_alias_path = LOCALE_ALIAS_PATH;
                         ^~~~~~~~~~~~~~~~~
../../intl/localealias.c:164:25: warning: unknown escape sequence: '\V'
../../intl/localealias.c:164:25: warning: unknown escape sequence: '\D'
../../intl/localealias.c:164:25: warning: unknown escape sequence: '\D'
../../intl/localealias.c:164:25: warning: unknown escape sequence: '\g'
../../intl/localealias.c:164:25: warning: unknown escape sequence: '\o'
make[2]: *** [Makefile:133: localealias.o] Error 1

В конце концов появляется второе сообщение об ошибке вместе с гигантской текстовой стеной, которую я не могу отобразить:

    make[2]: Leaving directory '/cygdrive/c/Users/Vuk/Desktop/Diplomski/gcc-8.1.0/objdir/libiberty'
config.status: creating Makefile
config.status: creating backtrace-supported.h
config.status: creating config.h
config.status: executing libtool commands
config.status: executing gstdint.h commands
config.status: executing default commands
make[1]: Leaving directory '/cygdrive/c/Users/Vuk/Desktop/Diplomski/gcc-8.1.0/objdir'
make: *** [Makefile:889: all] Error 2

Я не делаю все это из командной строки Windows, вместо этого я использую cygwin64.

1 Ответ

0 голосов
/ 12 сентября 2018

Замена исходного пути

"C:\Users\Vuk\Desktop\Diplomski\gcc-8.1.0\objdir"

на

"C:/Users/Vuk/Desktop/Diplomski/gcc-8.1.0/objdir"

решает проблему.

...