LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 654|回复: 3

一个apue的问题

[复制链接]
发表于 2003-10-29 09:38:27 | 显示全部楼层 |阅读模式
我的出错处理文件是liberror.a,编译源程序时出现了以下问题:
gcc -I /home/gr/APUE/gr -L /home/gr/APUE/gr -static -lerror 0303.c
/tmp/ccAPpkmq.o(.text+0x5c): In function `main':
: undefined reference to `err_sys'
/tmp/ccAPpkmq.o(.text+0x74): In function `main':
: undefined reference to `err_sys'
collect2: ld returned 1 exit status
make: *** [a.out] Error 1
这是何原因
发表于 2003-10-29 10:33:36 | 显示全部楼层
你的err_sys()函数是放在那里的?是否把头文件和库文件路径都包括了。
 楼主| 发表于 2003-10-29 11:06:21 | 显示全部楼层
err_sys()就在liberror.a里
发表于 2003-10-29 11:12:05 | 显示全部楼层
这是 link 的错误,不是 compile 的错误。
gcc -o error.o -c error.c

然后把你的命令中的 -lerror 改称
gcc -I /home/gr/APUE/gr -L /home/gr/APUE/gr 0303.c error.o
或者
gcc -I /home/gr/APUE/gr -L /home/gr/APUE/gr 0303.c ../libmisc.a
如果你有 apue 的源代码,而且成功编译生成了 libmisc.a
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表