请教informix的esql/c编程问题

wxx8la 2003-08-22 02:23:57
有一个test.ec文件,内容如下:
#include <stdio.h>

int main()
{
EXEC SQL include sqlca;
EXEC SQL BEGIN DECLARE SECTION;
int nOne = 0;
EXEC SQL END DECLARE SECTION;

EXEC SQL connect to "test";
printf("%d\n", sqlca.sqlcode);

EXEC SQL select one
INTO :nOne
FROM testme;

printf("nOne = %d\n", nOne);

EXEC SQL disconnect current;
return 0;
}

我用esql -c test.ec进行编译,生成test.c和test.o文件。
之后,我用cc test.c -I/usr/informix/incl/esql -o test进行编译,有以下出错提示:
undefined first referenced
symbol in file
_iqconnect test.o
sqlca test.o
_iqslct test.o
_iqdisconnect test.o
i386ld fatal: Symbol referencing errors. No output written to test

但我用esql test.ec -o test编译却能生成test可执行文件,并能正确打印出数据。

请问cc test.c -I/usr/informix/incl/esql -o test为何不能通过编译?因本人刚接触UNIX编程,特向各位请教。谢谢。
...全文
38 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluebird97073 2003-09-08
  • 打赏
  • 举报
回复
or

esql test.ec -o test


( ;
wenlq 2003-08-24
  • 打赏
  • 举报
回复
esql -o test test.ec
firmbank 2003-08-23
  • 打赏
  • 举报
回复
用cc进行编译的时候要加上esql的动态库,
是加哪个我忘了,你可以看下demo下的makefile
adiag 2003-08-22
  • 打赏
  • 举报
回复
是INFORMIX的库的路径没有加上。
看看你自己的env
esql做预处理的,会有许多informix的东西在里面,直接用cc,当然不行啦

1,194

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 Informix
社区管理员
  • Informix社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧