<No Subject Supplied>
Posted in 1994
Topics: Installation, Setup & Upgrades, Connectivity: ESQL/C, 4GL & Embedded SQL, Platform-Specific Issues
isqlperl on Solaris 2.3 ESQL/C 5.01 The main problem encountered was that the ESQL/C libraries refer to the routine ftime which is obsolete. To resolve this reference a UCB library had to be included which again required other libraries and at execution caused Bus Error. We wrote the following ftime routine which works for GMT but code is missing for other timezones, if somebody has the correct code please submitt it. #include <sys/types.h> #include <sys/timeb.h> #include <sys/time.h> int ftime(tp) register struct timeb *tp; { struct timeval tv; if (gettimeofday(&tv) != -1) { struct tm tmv; tp->time = tv.tv_sec; tp->millitm = tv.tv_usec / 1000; tp->timezone = timezone;/*code missing*/ tp->dstflag = daylight;/*code missing*/ return 0; } return -1; } Here are some of the lines from the Makefile which were changed: CC=gcc PERLDIR=/usr/local/src/perl-4.036 ILIBS=-lsql -lgen -los OTHERLIBS=-lX11 -ldbm -lsocket -lnsl -lm INSTALLMANTOP=/usr/local/man INSTALLMAN=$(INSTALLMANTOP)/man1 MANPAGE=isqlperl.man INFOINC=$(INFORMIXDIR)/incl/esql INFOLIB=$(INFORMIXDIR)/lib/esql OBJS=usersub.o isqlperl.o ftime.o #Under install: all after the line chmod 744 $(INSTALLMAN)/$(TARGET).$(MANSUFFIX) #add the line catman -w -M $(INSTALLMANTOP) Since we are using the gcc compiler and ESQL/C was compiled with the SUN cc compiler there is an unresolved symbol: int __cg92_used = 0; /* Solaris kludge */ this line has to be somwhere in the code. Why isqlperl - I have been considering a Mosaic Informix connection using isqlperl in the server - if anyone has experience of this kind I would like to get in contact. -- Thorvaldur Gunnlaugsson \\ The Parliament of Iceland thg@althingi.is \\ comp. departm. Vonarstr 8 voice:354-1-630655 fax:630670 \\ 150 REYKJAVIK