尝试构建我的GCC后端时遇到分段错误

问题描述 投票:1回答:1

我目前正在尝试为新架构编写GCC后端,但是当我尝试对其进行编译时,出现以下错误消息:

xgcc: internal compiler error: Segmentation fault signal terminated program cc1

使用以下命令配置内部版本:

../gcc/configure --prefix=--prefix=$HOME/GCC-10.0.1 --disable-bootstrap --target=arch_name --enable-languages=c

我将如何解决此错误,以便可以构建后端?

据我所知,我已经实现了要构建GCC所需的目标宏,函数和insn模式。

抱歉,这个问题有点含糊,我不确定我可以提供什么额外的信息。如果需要更多具体信息,请让我知道,我将编辑问题。

提前感谢。

gcc compilation compiler-construction cross-compiling porting
1个回答
0
投票

我将如何解决此错误,以便可以构建后端?

调试cc1

  1. xgcc位于$builddir/gcc中。因此运行$builddir/xgcc -B$builddir -v -save-temps <options-that-crash-cc1>

  2. [xgcc -v ...将打印它正在调用的子命令,记录它提供给崩溃的cc1调用的选项。

  3. 针对该cc1调用运行调试器,提供正确的选项,并在abort处实际设置一个断点(将为fancy_abort)。

  4. 无需优化即可构建编译器。为此,只需在make中运行$builddir/gcc。您可以根据需要提供其他选项,例如make -j4 cc1 CXXFLAGS='<flags-to-pass>'

  5. [$builddir/gcc提供.gdbinit来扩展gdb并附加钩子,以改善调试体验。

© www.soinside.com 2019 - 2024. All rights reserved.