这个问题是因为系统在/usr/include中找不到apue.h头文件以及缺少配套的库
解决步骤:
1.在下载源码
2.tar -zxv -f src.tar.gz 解压到当前文件夹下
3.进入解压得到的apue.2阅读README,文中有这样一段:To build the source, edit the Make.defines.*
file for your system and set WKDIR to the pathname of the tree containing the source code. Then
just run "make". 我们需要进入 Make.defines.linux文件修改“WKDIR=/home/sar/apue.2e”的路径为
你的apue.2e所在路径,保存退出后,在apue.e2路径下输入“# make”
4.#cp ./include/apue.h /usr/include 将apue.2e/include的apue.h复制到/usr/include
5.#cp ./lib/libapue.a /usr/lib 将apue.2e/lib/libapue.a这个静态库复制到/usr/lib
6.至此配置部分就可以了。
7.可以用这种方式链接静态库编译:gcc main.c -lapue -o main 将main.c预处理,编译,链接
apue.2e/lib/libapue.a生成可执行文件main
linux下动态库和静态库的创建及使用参考:
对于有些linux需要在第三步中“# make“前修改apue.2e/std/linux.mk中的nawk为awk。
阅读(1908) | 评论(0) | 转发(0) |