《unix环境高级编程》书中程序编译环境配置

  最近因为工作需要,需要在linux平台上编程,所以想看看《unix环境高级编程》,但是里面的例子在我的电脑里编译都通不过(我的是fedora 8,通不过是显而易见,因为在这些程序里作者自定义了很多自己的头文件等等),经过上网查了些资料,编译环境已经基本配置好(参考过小刀听雨、Vampire的博客),写这篇博文的主要用意是防止自己以后忘记了,再在网上查找,这样很浪费时间,所以自己就以博客的形式记录下来。也希望能给那些遇到同样问题的初学者一点捷径,快点进入学习核心知识中去,不要在这些配置上花费大量的时间。我的配置步骤如下:
       1.APUE2源代码下载:http://www.apuebook.com/src.tar.gz
       2. 我保存到了/home/von/linuxpro下.解压缩:tar -xzvf src.tar.gz(我 的普通用户为:von)
       3.cd apue.2e进入apue.2e目录,修改Make.defines.linux再make
          vi Make.defines.linux 修改WKDIR=/root/apue.2e 就是说工作目录为                                             WKDIR=/root/apue.2e,
          我的修改为:  WKDIR=/home/von/linuxpro/apue.2e
                                                   
       4.进入apue.2e/std/linux.mk把全部的nawk改为awk.因些linux默认没有nawk,可以使用
          :%s/nawk/awk/g (在底行命令行输入,注意冒号)
       5.在apue.2e下面:make
      
然后:
       6.启动一个终端,进入root用户,再进入#cd /usr/include;
       7.将/home/von/linuxpro/apue.2e/include/apue.h拷到第6步的目录下:
                     命令为:cp /home/von/linuxpro/apue.2e/include/apue.h .(注意有. 表示拷到当前目录下)
            再将/home/von/linuxpro/apue.2e/lib/error.c拷到第6步的目录下:
                  命令为:cp /home/von/linuxpro/apue.2e/lib/error.c .(同上)
       8. 编辑apue.h
            #vi apue.h
           在最后一行 #endif   前面添加一行 #include "error.c"
           :wq 保存,退出.
  OK 完成!

     找个例子编译:随机编译一个fig3.2文件:
     出现错误:"fig3.2: file not recognized: File format not recognized
                                            collect2: ld returned 1 exit status"
     原因是:fig3.2文件是链接文件,链接到file/hole.c文件上,可以打开看到内容一样。
     解决办法:将fig3.2换成源文件。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值