使用新版本的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文档中找不到它。
答案 0 :(得分:1)
我认为-bh
是-bhalt
的缩写,它指定了链接器命令停止之前允许的最大错误级别。