+ -
当前位置:首页 → 问答吧 → GCC-4.1.2 - Pass 1 里的一个疑问

GCC-4.1.2 - Pass 1 里的一个疑问

时间:2008-11-02

来源:互联网

tar xvf /lfs-sources/gcc-4.1.2.tar.bz2
mkdir -v gcc-build
cd gcc-build
CC="gcc -B/usr/bin/" ../gcc-4.1.2/configure --prefix=/tools \
--with-local-prefix=/tools --disable-nls \
--enable-shared --enable-languages=c
make bootstrap
make install
ln -vs gcc /tools/bin/cc
cd ..
rm -rf gcc-build
rm -rf gcc-4.1.2

上面是GCC-4.1.2 - Pass 1 的编译安装命令。使我不明白的是当执行完make install命令后,当前系统处于哪一个目录下。呵呵,紧接着执行的ln -vs gcc /tools/bin/cc更令我迷惑,因为他使
/tools/bin/cc指向了gcc 。。。而假若执行完make install命令后系统处于gcc-build目录下,那么实际上cc指向的是gcc-build目录下的gcc,但后面的两个rm命令把gcc安装目录又给删除了,那么这时cc到底指向了哪?

作者: osborn_lix   发布时间: 2008-11-02

一直处于gcc-build目录下;

ln -sv gcc /tools/bin/cc

使cc指向gcc,但是,这个gcc不是“当前”目录下的gcc。
而就是:gcc 。

可能会很费解;但是这就是软链接的好处,可以指向“任何”文件。

那么,这个gcc是在哪里呢?

你只要输入
which gcc
就知道了。

作者: ti8er   发布时间: 2008-11-03

呃,原来如此。我明白了。嘿嘿。

作者: benbenr   发布时间: 2008-11-03

man ln
ln 有很多种用法
ln -vs gcc /tools/bin/cc 是在 /tools/bin 下创建一个符号链接 cc 指向同一文件夹(即 /tools/bin)下的 gcc

作者: Vamperor   发布时间: 2008-11-03