<>第三章的一个程序编译不通过 ,大家看看了。

yutongjun108 2003-05-21 04:54:29
源代码如下:
#include <sys/types.h>
#include "ourhdr.h"
int
main(void)
{
if(lseek(STDIN_FILENO,0,SEEK_CUR)==-1)
err_sys("cannot seek\n");
else
err_sys("seek ok\n");
exit(0);
}
用gcc编译后的结果是
/tmp/ccFqGnWH.o: In function `main':
/tmp/ccFqGnWH.o(.text+0x27): undefined reference to `err_sys'
/tmp/ccFqGnWH.o(.text+0x39): undefined reference to `err_sys'
collect2: ld returned 1 exit status





...全文
61 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yutongjun108 2003-05-26
  • 打赏
  • 举报
回复
终于调试通过了,非常感谢sankxuan(似水流年)兄的提醒!!
很想和你交个朋友。本人自我介绍一下,现电子科大研一,刚开始学UNIX编程,
QQ:22104258
sankxuan 2003-05-26
  • 打赏
  • 举报
回复
恩,我中科大小本毕业

qq:25164322
sankxuan 2003-05-23
  • 打赏
  • 举报
回复
那只是函数的声明,函数的实现你要在apue里面找一下,能找到的
yutongjun108 2003-05-22
  • 打赏
  • 举报
回复
在我的ourhdr.h里面包括了的啊.而且我的ourhdr.h还是下载的源码,不存在输入错误啊。
......
......
void err_dump(const char *, ...); /* {App misc_source} */
void err_msg(const char *, ...);
void err_quit(const char *, ...);
void err_ret(const char *, ...);
void err_sys(const char *, ...);
......
......

interbanker 2003-05-22
  • 打赏
  • 举报
回复
err_sys应该在ourhdr.h里面定义吧。。你在makefile 把ourhdr.h加进去啊
CoolQ 2003-05-22
  • 打赏
  • 举报
回复
你应该把附录中的ourhdr.h也敲上吧?
里边有很多包裹函数(wrap function, 我看的是英文版)
sankxuan 2003-05-22
  • 打赏
  • 举报
回复
sys_err 等都是作者自己写的函数

不是系统调用
yutongjun108 2003-05-21
  • 打赏
  • 举报
回复
不好意思,打错了 该是<<APUE>>

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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