UNIX网络编程 头文件找不到apue.h 的解决方法
到网上去下载一个apue.h的头文件,百度一下,一大把,我是在这里下载的:http://www.apuebook.com/src.tar.gz ,下载下来,解压到你的根目录下面,是你的用户的目录下面
如:
我的文件放在Src下面, 我用的是Redhat9 ,U盘是需要手动挂载的
现在已经完成了第一步,在apue.2e 里面找到这个文件:
make.defines.linux 这个文件,用VI编辑器打开, 我是特权用户进去的,反正是VM,坏了可以再装,不用担心这个. 将里面的路径修改一下.
修改成你所话的位置。 在这里需要注意一下, 在上面的图片下面有一个CC,编辑器,一般来说是用Gcc就可以了,但是我的编辑C程序的时间是需要加296的,所以要改成GCC296,,如果你的VI编辑器是用gcc296 *.c -o * 进行编辑的,一定要改这里.
现在可以改std 里面的linux ,mk文件了,将nawk 全部改成awk就可以了.
将apue.2e 里面的include 中的apue.h 文件和 apue.2e 中的lib中的error.c 文件复制到/usr/include中去.
然后进入apue.2e lib 文件目录下,
输入命令make -f linux.mk 命令生成libapue.a 文件, 将这个文件复制到 /usr/lib 和/usr/lib64中去.
我本来打算在 crywin 中进行的, 可是发现没有make 命令, 应该可是解决的,.
这时就可以编辑了文件了.
#include
#include " apue.h"
int
main()
{
printf(" hello wold from process pid =%d" ,getpid());
exit (0);
}
这样会出错的。 它还会提示找不到apue.h头文件.
这里只需要把#include " apue.h" 改成 #include