0

我有一个 rpcgen 生成的文件 'api_svc1.c' 该文件包含以下行:

local = (char *(*)(char *, struct svc_req *)) createacct_5_svc;

'createacct_5_sv' 在 'api.h' 中声明为

createAcctResult * createacct_5_svc();

但即使包含头文件'api.h',我也会收到以下错误:

api_svc1.c:90: undefined reference to `createacct_5_svc'

阿比建议?

4

1 回答 1

1

我怀疑如果你有“api.h”,那么你也有“api.c”,在这种情况下,你必须将你的 api.c 文件链接到 ap_svc1.c。请注意,该错误不是抱怨缺少标头的编译器错误;这是一个链接器错误,在链接阶段编译为目标代码后抱怨找不到(无法解析)符号。

于 2012-06-28T06:28:07.617 回答