RE: cfgldb error on Linux
Posted in 1999
Sorry. I should have been a little clearer.
I made a copy of the cfgldb script and modified it to include the 3
libraries that I mentioned.
Ever since V7.something, I haven't been able to create a customised
runner/debugger without
having to do some modifications to the method described in the manuals.
Your cfgldb is the standard script supplied by Informix. You should make a
copy of it before you play
around with it too much.
Oh and I've also had to alter the last line
$ECHO exec ${INFORMIXC} -I$INFINC2 -I$INFINC1 $A $LIBES
to
$ECHO exec ${INFORMIXC} -I$INFINC2 -I$INFINC1 $A $LIBES -lisam
Like I said it may or may not be relevant to your problem, but try it. It'll
only take a minute or two.
I'm sure Mr Leffler will have something to say about the subject. ;->
-----Original Message-----
From: Cecilio Albero [mailto:eos@ctv.es]
Sent: Thursday, October 14, 1999 10:28 AM
To: informix-list@iiug.org
Subject: RE: cfgldb error on Linux
Rekaish Bhardwaj <RekaishB@compans.com> escribi' en el mensaje de noticias
7u1nsi$862$1@news.xmission.com...
>
> shouldn't the line
> "map",map,0,
> show one parameter passed.
> i.e.
> "map",map,1, ????
********yes, it was a mistake, but, this is not the problem.
>
> also I've no idea if this is relevant but I have had core dumps on AIX
> whilst doing creating a customised runner/debugger.
> My solution was as follows:
>
> I copied the cfgldb/cfglgo script from $INFORMIXDIR/bin and modified the
> line that sets the LIBES1 variable to include
> some libraries that where showing up as errors whilst linking.
>
> LIBES1="$LIBDB4GL $LIBDBGO $LIB4GL $LIBDB4IO $LIBNMENU $LIBRDS $LIBFE
> $LIBSQL /usr/lib/libtli.a /usr/lib/libcurses.a /usr/lib/libc.a"
>
> I initially had libtli.a, libcurses.a and libc.a at the beginning of the
> line which was causing a core dump.
> When I put it at the end I ended up with a perfectly working debugger.
>
******* I haven't these libraries on my cfgldb !!. My cfgldb is as follows:
CC=${CC:-i386-glibc20-linux-gcc}
INFORMIXC=${INFORMIXC:-${CC}}
INFDIR=${INFORMIXDIR:=/usr/informix}
INFLIB=$INFDIR/lib/tools
INFINC1=$INFDIR/incl/esql
INFINC2=$INFDIR/incl/tools
ESQLC=$INFDIR/lib/esql/esqlc
FGESQLC=$INFLIB/i4glc3
LIBDBGO=$INFLIB/libdbgo.a
LIBDB4GL=$INFLIB/libfgldb.a
LIB4GL=$INFLIB/lib4gl.a
LIBDB4IO=$INFLIB/libdb4io.a
LIBNMENU=$INFLIB/libnmenu.a
LIBRDS=$INFLIB/librdsterm.a
LIBFE=$INFLIB/libfe.a
LIBSQL=$INFLIB/libfesql.a
LIBASF=$INFLIB/libasf.a
LIBGEN=$INFLIB/libgen.a
LIBOS=$INFLIB/libos.a
#ifdef ASIAN
LIBGLS="$INFDIR/lib/tools/libgls.a $INFDIR/lib/tools/libglx.a"
#endif /* ASIAN */
LIBASFN=${INFDIR}/lib/tools/libasf.a
SYSLIB="-lm"
SYSNLIB=" -lcrypt"
TLILIB=
# define network libraries
NETTLISTUB="$INFLIB/nettlistub.a "
nettli="FALSE"
# check to see if the TLI library exists.
if [ "$TLILIB" != "" -a -f "$TLILIB" ]
then
#file exists
nettli="TRUE"
fi
# build network library
# for the system that does not provided TLI library, we have to use
nettlistub.a
if [ $nettli = "FALSE" ]
then
SYSNLIB=`echo $SYSNLIB | sed -e s:-lstr:: -e
s:-lnsl_s:"$NETTLISTUB": -e s:-lnsl:"$NETTLISTUB":`
fi
LIBES1="$LIBDB4GL $LIBDBGO $LIB4GL $LIBDB4IO $LIBNMENU $LIBRDS $LIBFE
$LIBSQL"
LIBES2="$LIBASF $LIBGEN $LIBOS $LIBASFN $LIBOS $LIBGEN"
LIBES3="$SYSLIB $SYSNLIB"
#ifdef ASIAN
LIBES="$LIBES1 $LIBES2 $LIBES3 $LIBGLS"
#else
#
# LIBES="$LIBES1 $LIBES2 $LIBES3"
#
#endif /* ASIAN */
ECHO=
A=""
for F
do
case $F in
-n )
ECHO="echo $A"
;;
*.ec )
if test -f $ESQLC
then
$ECHO $ESQLC $F
A="$A `basename $F .ec`.c"
elif test -f $FGESQLC
then
$ECHO $FGESQLC $F
A="$A `basename $F .ec`.c"
else
echo "No ESQL/C preprocessor is found."
echo ".ec files require I4GL (compiled) or ESQL/C."
exit 1
fi
;;
* )
A="$A $F"
;;
esac
done
$ECHO exec ${INFORMIXC} -I$INFINC2 -I$INFINC1 $A $LIBES