Unix环境高级编程环境搭建

  1. 在网上下载书中源代码, 点此连接: 点击打开链接

  2. 解压文件按

  3. cd apue.3e

  4. make

    在 make 的这个过程中一般会出错,后面显示 can’t find -lbsd, 解决办法是添加 libbsd.a 的静态链接库, 指令如下(ub系统)

     sudo apt-get install libbsd-dev 
  1. make

  2. 在编译成功的基础上,开始安装 apue.h 文件及其对应的静态链接库

libapue.a

[cpp] view plain copy
sudo  cp ./include/apue.h  /usr/include  
**重点内容**
[cpp] view plain copy
sudo cp ./lib/libapue.a  /usr/lib  
 为什么要将 libapue.a 移到 /usr/lib/ 中呢?  原因是 libapue.a 是 apue.h 头文件中包含的所有函数及宏定义的具体实现,是一个静态链接库

7. 以上环境搭建成功了,可以进行下面的测试

  1. 就拿书上的第一个例子
[cpp] view plain copy
gcc 1-3.c -o 1-3 -lapue  
  注意,这里一定要在后面加 -lapue, 具体原因可以参考 gcc 相关手册

9. 执行

“`
[cpp] view plain copy
./1-3 /lib

引用http://blog.csdn.net/linuxiplinux/article/details/49251483

centos 下错误解决方式:
错误代码如下:

/tmp/ccb9gvom.o: In function thr_fn':
barrier.c:(.text+0x6e): undefined reference to
heapsort’
collect2: ld 返回 1
make[1]: * [barrier] 错误 1
需要libbsd这个支持:
wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd-0.4.2-1.el6.elrepo.x86_64.rpm
wget http://elrepo.reloumirrors.net/testing/el6/x86_64/RPMS/libbsd-devel-0.4.2-1.el6.elrepo.x86_64.rpm
rpm -ivh libbsd-0.4.2-1.el6.elrepo.x86_64.rpm
rpm -ivh libbsd-devel-0.4.2-1.el6.elrepo.x86_64.rpm
上面的rpm顺序不能变
然后在apue中make就ok了

《UNIX环境高级编程》 错误处理
https://blog.csdn.net/wangyuling1234567890/article/details/22827135

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值