RE: Errors after upgrade to 4GL version 7.30
Posted in 2000
Topics: Installation, Setup & Upgrades, Connectivity: ESQL/C, 4GL & Embedded SQL
You may have to get ESQL/C 7.24.xxxx from Informix. -----Original Message----- From: Ira Rosen [mailto:IROSEN1@email.mot.com] Sent: Wednesday, June 21, 2000 10:40 AM To: informix-list@iiug.org Subject: Errors after upgrade to 4GL version 7.30 We are in the process of upgrading from 4GL version 6.05 to 7.30 UC4 on Solaris 2.6. We are also upgrading the data server from 7.24 to 9.20. While recompiling our esql-based applications with the new 4GL tools, we've come across some problems that appear to be related to the 4GL upgrade. I say this because everything compiled properly prior to the upgrade. The specific problem we are facing right now is a 'multiple defined' type error (-33050 and -33051). The multiply defined variables singled out in the error message include int4, int2, int1 and other typedef'd variables defined in $INFORMIXDIR/incl/esql/ifxtypes.h. One header file included in the source file that receives the compilation error from esql references ifxtypes.h in two places (indirectly), but the second reference is disabled via '#ifdef'. Has anybody come across a similar problem with esql on 4GL 7.30 UC4 (or any other release). The ifxtypes.h item mentioned on the previous line may be related to a problem on my application side, it could point to a problem with the development tools I am using, or it could be unrelated to the problem I am experiencing. Thank you for any help any one has to offer. -Ira Rosen
"Martin, Wayne E." wrote: > You may have to get ESQL/C 7.24.xxxx from Informix. > > -----Original Message----- > From: Ira Rosen [mailto:IROSEN1@email.mot.com] > Sent: Wednesday, June 21, 2000 10:40 AM > To: informix-list@iiug.org > Subject: Errors after upgrade to 4GL version 7.30 > > We are in the process of upgrading from 4GL version 6.05 to 7.30 UC4 on > Solaris 2.6. We are also upgrading the data server from 7.24 to 9.20. > While recompiling our esql-based applications with the new 4GL tools, > we've come across some problems that appear to be related to the > 4GL upgrade. I say this because everything compiled properly prior to > the upgrade. The specific problem we are facing right now is a 'multiple > defined' type error (-33050 and -33051). The multiply defined variables > singled out in the error message include int4, int2, int1 and other > typedef'd variables defined in $INFORMIXDIR/incl/esql/ifxtypes.h. One > header file included in the source file that receives the compilation > error from esql references ifxtypes.h in two places (indirectly), but > the second reference is disabled via '#ifdef'. Has anybody come across a > similar problem with esql on 4GL 7.30 UC4 (or any other release). The > ifxtypes.h item mentioned on the previous line may be related to a > problem on my application side, it could point to a problem with the > development tools I am using, or it could be unrelated to the problem I > am experiencing. > > Thank you for any help any one has to offer. > > -Ira Rosen I had a mistake on my initial posting. The esql version that I'm using is INFORMIX-ESQL Version 9.30.UC1 based on the 'esql -V' command. The previous esql version that I'm coming from is INFORMIX-ESQL Version 7.22.UC1. I've been looking over header files between the esql releases and found quite a bit of change. Some new ones, some old ones removed, some appear to have been combined or renamed, and other fun things. Anybody had similar experiences? -Ira Rosen
Yes, ESQL has changed quite a bit, in part to support the new data types etc in the 9.xx engines. To compile esql code that needs to be linked into programs also using 4GL modules you can use c4gl to compile those .ec files. For modules shared between pure ESQL and mixed ESQL/4GL apps you will have to compile with both and maintain separate libraries for each. Historical note and explanation: 4GL used to have it's own partially implemented ESQL/C parser which non-the-less output the same .c code for similar constructs and the underlying function calls were compatible, since 7.xx it uses the ESQL/C 7.xx parser and compiler which generates different sets of .c library calls and so is incompatible with .o files compiled with earlier 4GL but compatible with the 7.xx ESQL/C compiler's output. The 9.xx compiler which comes with the SDK generates incompatible output again due to the need to change the underlying library to deal with new data types etc. Art S. Kagel Ira Rosen wrote: > > "Martin, Wayne E." wrote: > > > You may have to get ESQL/C 7.24.xxxx from Informix. > > > > -----Original Message----- > > From: Ira Rosen [mailto:IROSEN1@email.mot.com] > > Sent: Wednesday, June 21, 2000 10:40 AM > > To: informix-list@iiug.org > > Subject: Errors after upgrade to 4GL version 7.30 > > > > We are in the process of upgrading from 4GL version 6.05 to 7.30 UC4 on > > Solaris 2.6. We are also upgrading the data server from 7.24 to 9.20. > > While recompiling our esql-based applications with the new 4GL tools, > > we've come across some problems that appear to be related to the > > 4GL upgrade. I say this because everything compiled properly prior to > > the upgrade. The specific problem we are facing right now is a 'multiple > > defined' type error (-33050 and -33051). The multiply defined variables > > singled out in the error message include int4, int2, int1 and other > > typedef'd variables defined in $INFORMIXDIR/incl/esql/ifxtypes.h. One > > header file included in the source file that receives the compilation > > error from esql references ifxtypes.h in two places (indirectly), but > > the second reference is disabled via '#ifdef'. Has anybody come across a > > similar problem with esql on 4GL 7.30 UC4 (or any other release). The > > ifxtypes.h item mentioned on the previous line may be related to a > > problem on my application side, it could point to a problem with the > > development tools I am using, or it could be unrelated to the problem I > > am experiencing. > > > > Thank you for any help any one has to offer. > > > > -Ira Rosen > > I had a mistake on my initial posting. The esql version that I'm using is > INFORMIX-ESQL Version 9.30.UC1 based on the 'esql -V' command. The previous > esql version that I'm coming from is INFORMIX-ESQL Version 7.22.UC1. I've > been looking over header files between the esql releases and found quite a > bit of change. Some new ones, some old ones removed, some appear to have > been combined or renamed, and other fun things. Anybody had similar > experiences? > > -Ira Rosen