亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: esql編譯報錯 [打印本頁]

作者: CHY_CUG    時間: 2012-12-21 10:07
標題: esql編譯報錯
報錯如下:
$ esql test.ec -o test.exe
esql[642]: cc:  not found

已安裝GCC,版本如下:
$ gcc -v
Using built-in specs.
Target: powerpc-ibm-aix5.3.0.0
Configured with: ../configure --with-as=/usr/bin/as --with-ld=/usr/bin/ld --enable-languages=c,c++,java --prefix=/opt/freeware --enable-threads --enable-version-specific-runtime-libs --host=powerpc-ibm-aix5.3.0.0 --target=powerpc-ibm-aix5.3.0.0 --build=powerpc-ibm-aix5.3.0.0 --disable-libjava-multilib
Thread model: aix
gcc version 4.2.0

請問什么原因?謝謝。
作者: liaosnet    時間: 2012-12-21 12:00
Target: powerpc-ibm-aix5.3.0.0

在aix中,esqlc 默認使用cc

因此,你需要在環(huán)境中指定INFOMIXC=gcc 并生效
或者修改$INFORMIXDIR/bin/esql 文件
CC="${INFORMIXC=gcc}"
CC_TH="${INFORMIXC=gcc}"
作者: CHY_CUG    時間: 2012-12-21 12:55
還是報錯。

$ esql test.ec -o test.ext
gcc: unrecognized option '-brtl'
ld: 0706-006 Cannot find or open library file: -l netstub
        ldpen(): No such file or directory
collect2: ld returned 255 exit status
作者: CHY_CUG    時間: 2012-12-21 13:26
已解決。需要加上:
-L /home/informix/lib

謝謝。
作者: CHY_CUG    時間: 2012-12-21 14:07
這樣可以成功:
$ gcc test.c -L /home/informix/lib/netstub.a -o test.exe
$

這樣還是報錯:
$ esql test.c -L /home/informix/lib/netstub.a -o test.exe
gcc: unrecognized option '-brtl'
ld: 0706-006 Cannot find or open library file: -l netstub
        ldpen(): No such file or directory
collect2: ld returned 255 exit status
作者: liaosnet    時間: 2012-12-21 15:19
回復 5# CHY_CUG


    建議你改下esql的那文件。。。。估計有些參數(shù)在gcc中不支持。。
作者: CHY_CUG    時間: 2012-12-21 15:59
怎么改呢?
作者: CHY_CUG    時間: 2012-12-24 10:02
大俠能幫忙看下怎么改么?謝謝。
作者: xinmencuoxue    時間: 2012-12-24 11:12
回復 8# CHY_CUG


    then
    SLIB=${INFDIR}/lib/esql/libifsql.a
    GLIB=${INFDIR}/lib/esql/libifgen.a
    OLIB=${INFDIR}/lib/esql/libifos.a
    ALIB=${INFDIR}/lib/libifasf.a
    GLSLIB=${INFDIR}/lib/esql/libifgls.a
    GLXLIB=${INFDIR}/lib/esql/libifglx.a
    COMB="$OLIB $GLIB"
    NETSTUB=${INFDIR}/lib/netstub.a
else
    SLIB=-lifsql
    GLIB=-lifgen
    OLIB=-lifos
    ALIB=-lifasf
    GLSLIB=-lifgls
    GLXLIB=-lifglx
    NETSTUB="-lnetstub "
fi
你的esql中有這些么?
作者: CHY_CUG    時間: 2012-12-24 13:00
回復 9# xinmencuoxue

有的。

# If libraries are added or removed make sure to update -libs option
if [ "x$STATOPT" != "x" ]
then
    SLIB=${INFDIR}/lib/esql/libifsql.a
    GLIB=${INFDIR}/lib/esql/libifgen.a
    OLIB=${INFDIR}/lib/esql/libifos.a
    ALIB=${INFDIR}/lib/libifasf.a
    GLSLIB=${INFDIR}/lib/esql/libifgls.a
    GLXLIB=${INFDIR}/lib/esql/libifglx.a
    COMB="$OLIB $GLIB"
    NETSTUB=${INFDIR}/lib/netstub.a
else
    SLIB=-lifsql
    GLIB=-lifgen
    OLIB=-lifos
    ALIB=-lifasf
    GLSLIB=-lifgls
    GLXLIB=-lifglx
    NETSTUB="-lnetstub "
fi


   
作者: CHY_CUG    時間: 2012-12-24 15:42
各位幫忙看看。謝謝。
作者: liaosnet    時間: 2012-12-24 15:47
回復 11# CHY_CUG


或者修改$INFORMIXDIR/bin/esql 文件
CC="${INFORMIXC=gcc}"
CC_TH="${INFORMIXC=gcc}"

這兩行改成這樣。。
作者: CHY_CUG    時間: 2012-12-24 15:49
現(xiàn)在報錯如下:
$ ./esql1 test.c -L /home/informix/lib/netstub.a -o test.exe
gcc: unrecognized option '-brtl'
作者: CHY_CUG    時間: 2012-12-24 16:06
把下面兩句:
# compile .c files, link with c++ .o's in $BO
if test "$STATOPT"
then
        exec $CC -I$INFDIR/incl/esql $INCLUDE $A $BO $COMB $SLIB $ALIB $COMB $GLSLIB $SYSNLIB $SYSLIB $GLXLIB $THRLIB
else
        exec $CC -brtl -I$INFDIR/incl/esql $INCLUDE $A $BO $LIBPATHS $SLIB $ALIB $GLIB $OLIB $GLSLIB $SYSNLIB $SYSLIB $CHKAPI $GLXLIB $THRLIB
fi
STAT=$?
exit $STAT

中的“-brtl”去掉了,暫時能編譯通過。不知道會有什么后果。
現(xiàn)在的C代碼中沒有對數(shù)據(jù)庫的操作,不知道加上之后會不會報錯。
作者: CHY_CUG    時間: 2012-12-24 18:46
已經(jīng)編譯通過,并且運行正常。謝謝。




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2