我正在尝试使用交叉编译为powerpc构建gcc 4.3-74。我使用以下configure命令配置make文件。
./ configure --build = i686-pc-linux-gnu --target = powerpc-linux --host = powerpc-linux --with-gmp = / xxx / include --with-gmp-include = / xxx / include --with-gmp-lib = / xxx / lib
配置成功完成,但是当我执行make时,它失败并显示以下消息
In file included from ../.././libiberty/floatformat.c:31:0:
/usr/include/string.h:548:5: error: unknown type name ‘__locale_t’
__locale_t __loc)
^
/usr/include/string.h:552:18: error: unknown type name ‘__locale_t’
好像它没有为powerpc获取正确的头文件。
当我在没有选项--host = powerpc-linux的情况下进行配置时,我遇到了构建binutils的类似问题。一旦我在configure中使用了一个选项--host = powerpc-linux,在binutils的情况下,同样的错误就消失了。
答案 0 :(得分:0)
就我而言,它使用了一些非常古老的编译器进行编译。这个旧编译器在我的用户配置文件中设置为PATH变量。因此,当我执行gcc时,它正在执行旧的gcc,这导致了这个错误。
我在用户个人资料中删除了PATH设置。现在当我运行gcc时,它正在执行最新的gcc。问题现在解决了。