PostgreSQLがビルドできん

$ make
i386-redhat-linux7-gcc -I/usr/lib/i386-redhat-linux7/include -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -I../../../../src/interfaces/ecpg/include -I../../../../src/interfaces/libpq -I../../../../src/include/utils -I../../../../src/include -D_GNU_SOURCE  -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS  -c -o informix.o informix.c
informix.c: In function `deccall3':
informix.c:64: `CDECIMALTYPE' undeclared (first use in this function)
informix.c:64: (Each undeclared identifier is reported only once
informix.c:64: for each function it appears in.)

ぬう.

$ grep -r CDECIMALTYPE ../../../../src/interfaces/ecpg/include/
../../../../src/interfaces/ecpg/include/sqltypes.h:#define CDECIMALTYPE ECPGt_decimal

久しぶりに-E使ってみる.やはり居た.

$ i386-redhat-linux7-gcc -I/usr/lib/i386-redhat-linux7/include -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -I../../../../src/interfaces/ecpg/include -I../../../../src/interfaces/libpq -I../../../../src/include/utils -I../../../../src/include -D_GNU_SOURCE  -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS  -c -E informix.c|grep sqltypes.h
# 1 "/usr/lib/i386-redhat-linux7/include/sqltypes.h" 1
# 40 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"
# 88 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"
# 136 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"
# 149 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"
# 274 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"
# 285 "/usr/lib/i386-redhat-linux7/include/sqltypes.h"

おまえかぁぁぁ!!

$ rpm -qf /usr/lib/i386-redhat-linux7/include/sqltypes.h
unixODBC-devel-2.0.7-3

ぬう.
大体

$ grep sqltypes.h informix.c 
#include 

なわけだけど,ユーザー定義ヘッダーはダブルクォートで囲むのが普通じゃなかったっけ?
#もうこの世界かなり自信がないけど(苦笑

とりあえず-Iの順番が問題だなぁ