即使将--prefix传递给configure,也会使安装权限被拒绝

时间:2010-07-11 04:44:06

标签: gcc makefile install prefix permission-denied

我正在尝试安装gcc(gcc的一个分支,而不是svn中的trunk),我配置它:

./configure --prefix=/home/user/myroot/ --enable-languages=c,c++ \
    --disable-multilib --libexecdir=/usr/lib --without-included-gettext \
    --enable-threads=posix --disable-werror --with-arch-32=i486 \
    --with-tune=generic --enable-checking=release --build=i486-linux-gnu \
    --host=i486-linux-gnu --target=i486-linux-gnu

/ home / user / myroot是一个存在的目录。

当我运行make时,它会构建gcc。

然而,当我进行安装时,这就是我得到的:

make[1]: Entering directory `/home/user/gcc/gcc-cjung'
/bin/bash ./mkinstalldirs /home/user/myroot /home/user/myroot
make[2]: Entering directory `/home/user/gcc/gcc-cjung/host-i486-linux-gnu/fixincludes'
rm -rf /usr/lib/gcc/i486-linux-gnu/4.5.0/install-tools
/bin/bash ../.././fixincludes/../mkinstalldirs /usr/lib/gcc/i486-linux-gnu/4.5.0/install-tools
mkdir -p -- /usr/lib/gcc/i486-linux-gnu/4.5.0/install-tools
mkdir: cannot create directory `/usr/lib/gcc/i486-linux-gnu/4.5.0': Permission denied
make[2]: *** [install] Error 1
make[2]: Leaving directory `/home/user/gcc/gcc-cjung/host-i486-linux-gnu/fixincludes'
make[1]: *** [install-fixincludes] Error 2
make[1]: Leaving directory `/home/user/gcc/gcc-cjung'
make: *** [install] Error 2

当我将前缀指定为/ home / user / myroot时,为什么还要将东西复制到/ usr / lib?

顺便说一下,如果重要的话,我正在使用Ubuntu 9.10。我已经安装了build-essential,gawk,flex,bison和libmpfr。

1 个答案:

答案 0 :(得分:5)

为什么要将libexecdir设置为/usr/lib?这意味着它必须将东西安装到/usr/lib,这是一个你不能写的目录。

您可能需要--libexecdir=/home/user/myroot/usr/lib