《UNIX环境高级编程》随书代码的打开方式

         最近在学习<>这本书,这本书里有好多包含代码的例子.自己打代码,太费事了,就从网上下,地址是:http://www.apuebook.com/

         代码下载了,然后看到书上的第1个例子--图1-3,怎么找到对应的代码内.用grep命令.具体方法:1.打开终端(ctrl+alt+T);2打开目录apue.3e(先把压缩包提取了),我的命令为:cd  /home/pangcx/documentation/adwanced_programming_in_unix/apue.3e;3.grep -r 'directory_name' 该命令表示搜索当前及子目录下的包含 directory_name(图1-3的代码中包含的字符串) 的行,-r表示要搜索子目录.这样就可以看到我要找找的代码的位置了.结果显示代码为intro/ls1.c

         找到代码后,怎么运行呢?用make命令.1.在apue.3e目录下,有个systype.sh的文件,右键它->属性->权限->允许作为程序运行文件,这里打上对勾.2.在相应目录下执行make.这里我要运行apue.3e/intro文件夹下的代码,我就打开该目录(在终端上输入cd  /home/pangcx/documentation/adwanced_programming_in_unix/apue.3e/intro),然后输入 sudo make(sudo 是以管理员权限执行该指令).3.这样,就生成了各代码对应的可执行文件(.out文件)4.运行生成的文件.文件目录不用改,按照书中的示例输入 ./ls1 /dev 指令,就看到了应有的结果.

附:我遇到的几种问题及相应方案.

1.错误描述:
make[1]: 正在进入目录 `/home/pangcx/documentation/apue.3e/advio'
./fixup.awk rot13a.c >xlate
/bin/sh: 1: cannot create xlate: Permission denied
make[1]: *** [rot13c2.c] 错误 2
make[1]:正在离开目录 `/home/pangcx/documentation/apue.3e/advio'
make: *** [all] 错误 1

解决方案:
在advio目录下:
$su root
#chmod 777 fixup.awp

2.错误描述:
make[1]: 正在进入目录 `/home/pangcx/documentation/apue.3e/fileio'
make[1]: *** 没有规则可以创建“all”需要的目标“fileflags”。 停止。
错误原因:
'fileflags'文件找不到.由于我的误操作,把它放到了一个文件夹中
解决方案:
把该文件找回来.

3.错误描述:
/usr/bin/ld: cannot find -lbsd
解决方案:
在终端中输入命令:
sudo apt-get install libbsd-dev
参考出处:http://www.bkjia.com/ASPjc/878278.html

你可能感兴趣的:(《UNIX环境高级编程》随书代码的打开方式)