1

当使用新版本的 Informix-4GL 编译文件时,它会启动以下命令,将生成的对象链接到可执行文件中。

cc -qchars=signed -D_H_LOCALEDEF -DASIAN -DAIX_43 -DAIX_53 -DUSE_PROTOTYPES \ 
   -Dsigflag=ix_os_sigflag -DTERMINFO -bh:8 -s -brtl -DASIAN \
   -qarch=com -qchars=signed -D_H_LOCALEDEF -DINFX_ANSI -DASIAN \
   -s -DAIX_43 -DAIX_53 \
   -o teste -s teste.o \
   -lm -lbsd -lc_r -ldl -ltli_r -lm_r

如果有一个未定义的符号,它会给出错误,但会生成文件teste,尽管没有执行权限。这种行为与以前的版本不同,它与 make 配合得不好:如果我做了 2 次,第一次它会给出 undef 错误,但在第二次它什么也不做,因为可执行文件已经存在。

如果我取消该-bh:8选项,它会像以前一样工作(不生成 exec 文件)。

有谁知道这个选项/标志:-bh:8?我在 cc 文档中找不到它。

4

1 回答 1

1

我相信-bh是 的缩写-bhalt,它指定链接器命令停止之前允许的最大错误级别。

于 2014-12-16T17:51:15.553 回答