ESQL/C on Solaris
Posted in 1994
We are currently migrating from Informix 4.0 SE on VAX/Ultrix to
Informix 5.0 SE on SunOS 5.3, and we are currently having problems
compiling our esql/c programs. I have checked out the programs to see
if there are any obvious changes, like the '$ sqlstatemnt' syntax
changing, and I don't see anything. The program compiles successfully
on the VAX.
The error messages I get imply that our embedded SQL is being
interpreted as standard C code.
Some error messages:
"travel.ec", line 80: too many struct/union initializers
"travel.ec", line 80: too many struct/union initializers
"travel.ec", line 80: warning: improper pointer/integer combination: op "="
"travel.ec", line 80: too many struct/union initializers
"travel.ec", line 81: too many struct/union initializers
"travel.ec", line 81: too many struct/union initializers
"travel.ec", line 81: warning: improper pointer/integer combination: op "="
"travel.ec", line 81: too many struct/union initializers
ESQL/C code:
$DECLARE name_ptr CURSOR FOR
SELECT pr_lname, pr_fname, pr_address, pr_address2, pr_city, pr_state, pr_zip2
INTO $lastn, $firstn, $addressn, $address2n, $cityn, $staten, $zipn
FROM tpersons2 WHERE pr_lname = $rlast
AND pr_fname = $rfirst ; checkerr ("Error declaring name_ptr");
Once I comment out the '$DECLARE....' section, up to the first ';', the
line 80 and 81 error messages go away. So, either the syntax has
changed, or we are installing esql/c incorrectly (ie, we are installing
the components of Informix 5.0 SE in the wrong order).
I would greatly appreciate any help on this problem. I hope that I am
missing something trivial.
I can be reached at viktor@mgr.hjf.org
Thanks much,
Viktor Kaufmann