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

Mad*_*mha 4 gcc install makefile 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
Run Code Online (Sandbox Code Playgroud)

/ 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
Run Code Online (Sandbox Code Playgroud)

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

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

Bor*_*lid 5

你为什么设置libexecdir/usr/lib?这意味着它必须安装到/usr/lib您无法编写的目录中.

你可能想要 --libexecdir=/home/user/myroot/usr/lib