[嵌入式linux] 新手求助Linux编译工具链的时候出现open_missing_mode错误

[复制链接]
 楼主| 夜雨幻姬 发表于 2016-11-9 14:21 | 显示全部楼层 |阅读模式

在函数‘open’中,
    内联自‘collect_execute’于 /work/tools/create_crosstools/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/gcc-3.4.5/gcc/collect2.c:1537:20:
/usr/include/x86_64-linux-gnu/bits/fcntl2.h:51:24: 错误: 调用‘__open_missing_mode’,声明有错误属性:open with O_CREAT in second argument needs 3 arguments
make[1]: *** [collect2.o] 错误 1
make[1]:正在离开目录 `/work/tools/create_crosstools/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/build-gcc-core/gcc'
make: *** [all-gcc] 错误 2
在网上也查了 redir_handle = open (redir, O_WRONLY | O_TRUNC | O_CREAT);
O_CREAT后面需要再加参数 ,但是我在collect2.c里加了参数之后,再继续编译,每次都会collect.c里被我加参数的open函数都会被强行还原,然后看到有人说可以通过设置FORTIFY_SOURCE=0来disable对open()的检查,还有禁止FORITY扩展什么的。具体并不知道咋做的。。
本人纯小白,跟着韦东山的书刚开始学 就卡在这了,不能继续 好桑心
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

14

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部