При компиляции файла с использованием новой версии Informix-4GL он запускает следующую команду для ссылки на сгенерированный объект в исполняемый файл.Недокументированный флаг в CC
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
? Я не мог найти его в документальной документации.