|
发表于 2008-11-4 12:11:43
|
显示全部楼层
Post by lofeng410;1903602
在./configure时,如果没有指定--prefix选项,那么会使用PREFIX这个变量的值作为安装位置,而这个值大多为/usr/local。但是我echo $PREFIX,却什么都没有显示出来,难道这个变量在系统中没有定义?那又是在什么地方由谁定义的呢?又由谁使用的呢?
这些变量的默认值,又该怎么去查看呢?
以上是某个./configure --help的输出中的一部分
configure所用到的变量,全部都是内部变量,而不是“全局变量”。如果你学过C语言,对这个说法应该比较好理解。
比如PREFIX这个变量,我们这样定义:
./configure --prefix=/usr
那么,在configure脚本看来,PREFIX变量已经变为了/usr
,但是,对于bash来说,根本是没有这个变量的。所以你
echo $PREFIX
是看不到任何结果的。
如果你在bash中指定了PREFIX的值,比如
export PREFIX=/usr
然后试图用
./configure
来实现,结果也是不行的。configure一般不会去读bash中的环境变量值,除非这个脚本设置了这么做。
简之:configure脚本用到的变量和bash下的环境变量不是一回事。 |
|