【问题标题】:Trouble while building GCC compiler构建 GCC 编译器时出现问题
【发布时间】:2018-09-12 19:02:30
【问题描述】:

所以,我尝试从源代码构建 GCC 编译器 (8.1.0),但遇到了问题。我正在尝试在 Windows 7 上构建它,首先,我尝试构建 8.2.0 版本并遇到了我正在尝试构建的当前版本的确切问题(自 8.2.0 版本于 7 月 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"

我之前按照官方guide的推荐做了一个objdir目录。我计划在其中存储构建的编译器。

在上一步之后我运行:

制作-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。

【问题讨论】:

  • "C:\Users\Vuk\Desktop\Diplomski\gcc-8.1.0\objdir" 以某种方式出现在源代码中(可能通过宏)并导致麻烦,因为\U\V\D\g\o 不是有效的反斜杠字符串中的转义序列。
  • @melpomene 你是完全正确的。而且我觉得有趣的是我没有注意到 \U , \V ,...对应于我正在编译的路径...

标签: gcc cross-compiling


【解决方案1】:

替换原来的路径

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

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

解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-11-09
    • 1970-01-01
    • 1970-01-01
    • 2018-07-17
    • 2016-06-23
    • 2012-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多