apue.h头文件(Unix环境高级编程第三版)的安装
配置apue.h头文件的时候,作为Linux初学者,网上的答案都是不太适用,问题百出,弄了好久总算完成!
注意我使用的是Fedora26,方法同样适用于CentOS和Ubuntu
1、下载源码文件
2、保存
3、tar解压
解压:$ tar -zxv -f filename.tar.bz2 [-C dir] (解压*.tar.bz2至目录dir)
解压:$ tar -jxv -f filename.tar.gz [-C dir] (解压*.tar.gz至目录dir)
压缩:$ tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称(压缩文件成filename.tar.bz2)
查询:$ tar -jtv -f filename.tar.bz2(查看压缩文件含有哪些文件名)
参数说明:
-c:新建打包文件
-x:解压缩的功能
-t :查看打包文件的内容含有哪些文件名,重点在查看文件名
-j :通过bzip2的支持进行压缩/解压缩,文件名最好为 *.tar.bz2
-z:通过gzip的支持进行压缩/解压缩,文件名最好为 *.tar.gz
-v:在压缩/解压缩过程中,将正在处理的文件名显示出来
-f 文件名: -f + 文件名,表面要被处理的文件名,建议-f单独写一个参数
-C 目录 : -C + 目录,解压至特定的目录
4、进入解压目录,make
5、报错:缺少libbsd库
6、安装libbsd库
$ sudo apt-get install libbsd-dev(网上的Ubuntu都是这样装的,但是我的Fedora和Ubuntu,,哎)
Fedora26下:
下载失败
E:Couldn't find package libbsd-dev
看看我的Ubuntu版本:
通过$ apt-get install libbsd-dev
也失败,404未找到!!!
换一种方式:
通过RPM安装,需要下载
- libbsd-0.8.3-3.fc26.x86_64.rpm http://www.rpmfind.net/linux/rpm2html/search.php?query=libbsd(内有Fedora和CentOS的libbsd的RPM包)
- libbsd-devel-0.8.3-3.fc26.x86_64.rpm http://www.rpmfind.net/linux/rpm2html/search.php?query=libbsd-devel(内有Fedora和CentOS的libbsd-devel的RPM包)
注意:fc代表Fedora、el代表CentOS
Ubuntu可到http://us.archive.ubuntu.com/ubuntu/pool/main/libb/libbsd/进行下载(没有找到很全的,有些版本没有)
进入下载目录安装:
$ sudo rpm -ivh libbsd-0.8.3-3.fc26.x86_64.rpm
$ sudo rpm -ivh libbsd-devel-0.8.3-3.fc26.x86_64.rpm
7、make(again)
$ cd ~/apue/apue3e.h
$ make
最后make成功:
8、进入 apue.3e发现 lib include,这是我们要用的
9、复制文件
# vi apue.h
在最后一行 #endif 前面添加一行 #include "error.c"
:wq 保存,退出.
10、测试成功
自己解决问题能学到很多东西,以上,总算可以好好学习apue了。