我正在尝试安装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。
答案 0 :(得分:5)
为什么要将libexecdir
设置为/usr/lib
?这意味着它必须将东西安装到/usr/lib
,这是一个你不能写的目录。
您可能需要--libexecdir=/home/user/myroot/usr/lib