Kbase 21756: "Undefined Symbol" When Building SQL-92 ESQL/C Program
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  07/02/2002 |
|
SUMMARY:
This Solution applies to Progress 9.1C on Solaris.
EXPLANATION:
When you try to precompile and build an SQL-92 ESQL/C program, you might get the following errors:
cc -o eli.exe eli.o -lesql92 -lm -lsocket -lnsl -lintl
Undefined first referenced
symbol in file
__1cDstdObasic_ofstream4Ccn0ALchar_traits4Cc___His_open6M_b_
/lms2/astea/dlc/lib
/libesql92.so
__1cDstdObasic_ofstream4Ccn0ALchar_traits4Cc___2t6Mpkcil_v_
/lms2/astea/dlc/lib/
libesql92.so
__1cDstdObasic_ofstream4Ccn0ALchar_traits4Cc___2T6M_v_
/lms2/astea/dlc/lib/libes
ql92.so
__1cDstdObasic_ofstream4Ccn0ALchar_traits4Cc___Fclose6M_v_
/lms2/astea/dlc/lib/l
ibesql92.so
ld: fatal: Symbol referencing errors. No output written to eli.exe
SOLUTION:
Progress 9.1C on Solaris supports Sun Workshop compiler C/C++ 5.0. Verify that the compiler is installed correctly and functions correctly.
If you see the following messages when checking the compiler, the compiler is not properly installed or is not the version that Progress supports.
/usr/ucb/cc -V
ucbcc: SC3.0.1 13 Jul 1994
ld: Software Generation Utilities - Solaris-ELF (4.0)
Undefined first referenced
symbol in file
main /opt/SUNWspro/SC3.0.1/lib/crt1.o
ld: fatal: Symbol referencing errors. No output written to a.out
According to Sun, Sun workshop 5.0 has C/C++ compiler 5.0. Version 5.0 and above are named Forte Developer 6. To see a version chart, go to: http://www.sun.com/forte/developer/compatchart.html
References to Written Documentation:
Progress Knowledge Base Solutions:
21057, "How To Test SQL-92 ESQL/C Issues On UNIX"
21044, "Differences in Building ESQL/C 89 and ESQL/C 92 Clients"