|
发表于 2006-7-21 13:08:42
|
显示全部楼层
几点补充:
1.
"`"号使用的是shell命令替换,也就是说shell会执行`号包含的命令,然后把输出替换到`所在的位置,所以SPECFILE=`gcc --print-file specs`的执行结果是设置变量SPECFILE得指为specs文件的绝对路径。
2.
's@ /lib/ld-linux.so.2@ /tools/lib/ld-linux.so.2@g'做的是全局替换,之所以使用@是为了作为分隔符,因为替换的内容中有/,使用转义符号太麻烦了。所以这里的空格都去掉也是可以的,可能会出现问题的情况是第一个有空格而第二个没有,这样的话,替换的结果可能会导致替换的内容和前面的内容连成一起(因为原有的空格被替换掉了),这样就会出错。
3。关于sed -i "s/relid'/relid/" configure
这里之所以liveCD不需要替换,而某些host系统需要是因为bash的版本。
liveCD(目前)的bash版本是3.00
而bash3.1就会报错,因为configure脚本中的相应语句中多了一个' |
|