Kbase P53418: undefined symbols linking ESQL/C-92 program on Linux
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  12/11/2003 |
|
Status: Unverified
FACT(s) (Environment):
Linux Intel
FACT(s) (Environment):
Progress 9.1D
SYMPTOM(s):
undefined symbols linking ESQL/C-92 program
test.o: In function `main':
test.o(.text+0x34): undefined reference to `tpe_get_cur_user'
test.o(.text+0x54): undefined reference to `tpe_get_cur_userpw'
test.o(.text+0x80): undefined reference to `tpe_sqlconnect'
test.o(.text+0xbc): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0xc7): undefined reference to `tpe_tm_mark_abort'
test.o(.text+0xf0): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0xfb): undefined reference to `tpe_tm_end_trans'
test.o(.text+0x128): undefined reference to `tpe_sql_disconnect'
test.o: In function `sqlquery':
test.o(.text+0x1b0): undefined reference to `tpe_sql_chk_connection'
test.o(.text+0x1ee): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x1fc): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x207): undefined reference to `tpe_set_cursor'
test.o(.text+0x239): undefined reference to `tpe_set_cursorname'
test.o(.text+0x267): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x275): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x280): undefined reference to `tpe_sqlprepare'
test.o(.text+0x2b4): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x2c2): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x2cd): undefined reference to `tpe_sqldeclare'
test.o(.text+0x300): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x30e): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x319): undefined reference to `tpe_sqlopen'
test.o(.text+0x350): undefined reference to `PRO_SQLDA_Allocate'
test.o(.text+0x373): undefined reference to `tpe_set_ptrs'
test.o(.text+0x389): undefined reference to `tpe_set_ptrs'
test.o(.text+0x3b5): undefined reference to `tpe_set_sqlda'
test.o(.text+0x3d4): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x3e2): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x3ed): undefined reference to `tpe_sqlfetch'
test.o(.text+0x422): undefined reference to `PRO_SQLDA_Deallocate'
test.o(.text+0x477): undefined reference to `tpe_get_curdbhdl'
test.o(.text+0x485): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x490): undefined reference to `tpe_sqlclose'
test.o(.text+0x4b8): undefined reference to `tpe_get_curtmhdl'
test.o(.text+0x4c3): undefined reference to `tpe_tm_end_trans'
collect2: ld returned 1 exit status
gcc -o client.exe test.o -L$SQLLIB -lesql92 -lm
returned error status 256
source code compile OK but does not link
gcc -o client.exe test.o -L$SQLLIB -lesql92 -lm
SQLLIB is not set
CAUSE:
libesqlc92.so should be linked into the executable but the link line does not have it
FIX:
Link libesqlc92.so into the executable.
SQLLIB can be set to $DLC/lib/libesql92.so prior to linking.