configure解释

转载 2012年03月29日 12:23:36
在configure的第一段就是:
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
 emulate sh
 NULLCMD=:
 # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
 # is contrary to our usage. Disable this feature.
 alias -g '${1+"$@"}'='"$@"'
elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
 set -o posix
fi
DUALCASE=1; export DUALCASE # for MKS sh

1    if
if语句测试条件,测试条件返回真( 0)或假(1)后,可相应执行一系列语句。i f语句结构对错误检查非常有用。其格式为:
if 条件1
then 命令1
elif 条件2
then 命令2
else 命令3
fi
很简单,呵呵。
使用i f语句时,必须将t h e n部分放在新行,否则会产生错误。如果要不分行,必须使用命令分隔符。
2             test
写脚本时,有时要判断字符串是否相等,可能还要检查文件状态或是数字测试。基于这些测试才能做进一步动作。Te s t命令用于测试字符串,文件状态和数字。
t e s t一般有两种格式,即:
test condition

[ c o n d i t i o n ]
使用方括号时,要注意在条件两边加上空格。
字符串测试是错误捕获很重要的一部分,特别在测试用户输入或比较变量时尤为重要。字符串测试有5种格式。
l         test “string”
l         test string_op “string”
l         test “string” string_op “string”
l         [string_op string]
l         [“string” string_op “string”]
这里,s t r i n g _ o p可为:
= 两个字符串相等。
!= 两个字符串不等。
-z 空串。
-n 非空串。
3             变量赋值
上述语句中:${ZSH_VERSION+set}就是对变量的赋值操作,ZSH_VERSION和BASH_VERSION都是不同的shell定义的值,且是只读的。对于cygwin来讲,BASH_VERSION的值为3.2.33(18)-release。而其中的加号表示如果设置了v a r i a b l e - n a m e,则重设其值。返回的结果为这个变量最终的值。
其它相关的几个赋值符号为:
Va r i a b l e - n a m e = v a l u e 设置实际值到v a r i a b l e - n a m e
Va r i a b l e - n a m e + v a l u e 如果设置了v a r i a b l e - n a m e,则重设其值
Va r i a b l e - n a m e : ? v a l u e 如果未设置v a r i a b l e - n a m e,显示未定义用户错误信息
Va r i a b l e - n a m e ? v a l u e 如果未设置v a r i a b l e - n a m e,显示系统错误信息
Va r i a b l e - n a m e : = v a l u e 如果未设置v a r i a b l e - n a m e,设置其值
Va r i a b l e - n a m e : - v a l u e 同上,但是取值并不设置到v a r i a b l e - n a m e,可以被替换
因此对于本段代码,if语句的第一个条件将为假,后面的emulate sh当然也就不会执行。而elif的第一个条件则为真。
4             set
set是bash的一个内置命令,man page中对set –o posix的解释是:
change the behavior of bash where the default operation differs from the POSIX standard to match the mode standard(posix mode).
如果命令成功其返回值为0。
5             重定向
linux下常用的重定向命令
command > filename 把把标准输出重定向到一个新文件中
command >> filename 把把标准输出重定向到一个文件中(追加)
command 1 > fielname 把把标准输出重定向到一个文件中
command > filename 2>&1 把把标准输出和标准错误一起重定向到一个文件中
command 2 > filename 把把标准错误重定向到一个文件中
command 2 >> filename 把把标准输出重定向到一个文件中(追加)
command >> filename 2>&1 把把标准输出和标准错误一起重定向到一个文件中(追加)
command < filename >filename2 把c o m m a n d命令以f i l e n a m e文件作为标准输入,以f i l e n a m e 2文件
作为标准输出
command < filename 把c o m m a n d命令以f i l e n a m e文件作为标准输入
command << delimiter 把从标准输入中读入,直至遇到d e l i m i t e r分界符
command <&m 把文件描述符m作为标准输入
command >&m 把标准输出重定向到文件描述符m中
command <&- 关闭标准输入
因此
>/dev/null 2>&1
也就很容易理解了,就是不显示错误消息和命令的输出。
6             export
环境变量用于所有用户进程(经常称为子进程)。登录进程称为父进程。s h e l l中执行的用户进程均称为子进程。不像本地变量(只用于现在的s h e l l)环境变量可用于所有子进程,这包括编辑器、脚本和应用。
传统上,所有环境变量均为大写。环境变量应用于用户进程前,必须用e x p o r t命令导出。环境变量与本地变量设置方式相同。
DUALCASE=1; export DUALCASE # for MKS sh
就是导出了一个称为DUALCASE的环境变量。

Configure命令详细解释.doc

  • 2014年08月08日 12:01
  • 42KB
  • 下载

Qt configure参数解释

  • 2012年12月20日 15:54
  • 220KB
  • 下载

configure pkg-config PKG_CONFIG_PATH(解释)

1.什么是configure       configure会根据传入的配置项目检查程序编译时所依赖的环境以及对程序编译安装进行配置,最终生成编译所需的Makefile文件供程序Make读入使用进而...

QT编译./configure参数的详细解释

http://www.cuteqt.com/bbs/viewthread.php?action=printable&tid=534&sid=U8r3v3 =======================...

Linux系统下Configure命令参数解释说明

Linux系统下Configure命令参数解释说明 由Linux系统中文网(Linux521.com)编辑收集整理,除Linux521注明原创文章外,其版权归原作者所有。如果您在学习中遇到问题欢迎在下...

QT编译./configure参数的详细解释

================================== ====全文是按照./configure -help来翻译的======== ========================...
  • f_066
  • f_066
  • 2014年08月28日 17:38
  • 232

[编译] QT编译./configure参数的详细解释[新手充电必读]

QT编译./configure参数的详细解释[新手充电必读]       终于翻译完了,我承认翻译的很差,甚至很多都有误解,但是没办法我只是新手+对QT的兴趣,有错一定要指出来,我马上编辑下,目的...
  • LENIX
  • LENIX
  • 2012年11月29日 17:07
  • 1021

Configure命令参数解释说明

’configure’脚本有大量的命令行选项.对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的.带上’-- help’选项执行’configure’脚本可以看到可用的所有选项....
  • wzwind
  • wzwind
  • 2011年08月08日 17:27
  • 431

QT configure参数解释

在编译QT前,可加各种参数来定制自己想要的QT库。这对需要裁减QT库的朋友来说非常重要。对于如何编译QT,可以参考:http://hi.baidu.com/agassi%5Fp/blog/item/4...
  • HiRuyue
  • HiRuyue
  • 2014年02月24日 11:14
  • 545

QT编译./configure参数的详细解释

http://www.cuteqt.com/bbs/viewthread.php?action=printable&tid=534&sid=U8r3v3   ===============...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:configure解释
举报原因:
原因补充:

(最多只允许输入30个字)