亲爱的各位,
下面是链接库并生成EXE的命令:

ld -o readgfile  readg_x.o MedLib_x.o cdrsort.o mtcprc.o encoder.o mtcbuil.o dbtprc.o dbtbuil.o  DFMLIB_x.o Dyn_SQL_x.o /home/med/src/api/libnapi.a  /home/med/src/api/libtabs.a $ORACLE_HOME/lib/libclntsh.so

但是当我运行这个命令时,它无法从libtabs.a中存档的文件中找到readg_x.o中使用的函数。
readg_x.o: In function `main':
/home/med/src/readg/readg_x.c:565: undefined reference to `options'
/home/med/src/readg/readg_x.c:570: undefined reference to `oraconnect'
/home/med/src/readg/readg_x.c:591: undefined reference to `oracommit'

最佳答案

这个错误意味着库libtabs.a不包含您的想法。您可以使用objdump之类的工具列出库中定义的所有符号,以确保您所期望的是真正的符号。

07-27 13:33