检查相关帖子后,还是无法在没有root权限的情况下在Linux上安装GCC 4.7?

时间:2012-05-29 19:20:10

标签: linux gcc installation g++ permission-denied

检查帖子后:

Install gcc on linux with no root privilege

https://stackoverflow.com/questions/9316118/installing-gcc-as-non-root

我的问题仍然无法解决,所以我在这里发布。

我正在尝试使用gcc版本4.1.2 20080704(Red Hat 4.1.2-52)在Linux上安装GCC 4.7。

我运行configure with prefix作为我的主目录。

./configure \
    --with-gmp=/remote/home/gcc_4_7_2012_5_28/gmp505 \
    --with-mpfr=/remote/home/gcc_4_7_2012_5_28/mpfr242 \
    --with-mpc=/remote/home/gcc_4_7_2012_5_28/mpc081 \
    --disable-libjava

然后,make就可以了。但是,让检查不行,我收到了错误:

make[1]: Entering directory `/remote/home/gcc_4_7_2012_5_28/trunk'

make[2]: Entering directory `/remote/gcc_4_7_2012_5_28/trunk/host-x86_64-unknown-linux-gnu/fixincludes'

autogen -T ../.././fixincludes/check.tpl ../.././fixincludes/inclhack.def

make[2]: execvp: autogen: Permission denied

make install is not ok. 

make[1]: Entering directory `/remote/home/gcc_4_7_2012_5_28/trunk'
/bin/sh ./mkinstalldirs /usr/local /usr/local

make[2]: Entering directory `/remote/home/gcc_4_7_2012_5_28/trunk/host-x86_64-unknown-linux-gnu/fixincludes'

rm -rf /usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/install-tools
/bin/sh ../.././fixincludes/../mkinstalldirs /usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/install-tools

mkdir -p -- /usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/install-tools

mkdir: cannot create directory `/usr/local/libexec/gcc': Permission denied

我无法获得root权限。

感谢任何帮助。

谢谢!

2 个答案:

答案 0 :(得分:1)

编译GCC时,你应该永远不要在源代码树中构建它

您在配置参数中忘记了一个前缀,可能类似于

mkdir $HOME/gcc-build
cd $HOME/gcc-build
/your/path/to-source-tree/gcc-4.7.0/configure --prefix $HOME/pref \
         --program-suffix -my4.7 \
# other configure arguments go here 

当然,您会在$HOME/pref/bin/gcc-my4.7中找到您的编译器,因此我建议您将$HOME/pref/bin添加到$PATH$HOME/pref/lib添加到$LD_LIBRARY_PATH

成功安装GCC 4.7后,您可能会尝试构建GCC MELT [meta-]插件

gcc-help@gcc.gnu.org邮件列表是获得此类帮助的好地方。

答案 1 :(得分:0)

您需要检查config.log文件,查找“检查目标文件的后缀”。您应该会在附近的某处看到一条错误消息,它可以帮助您解决问题。

或者,使用EasyBuild构建GCC 4.7,它可以为您完成所有工作,请参阅http://hpcugent.github.com/easybuild