首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在没有root权限的linux上安装gcc

在没有root权限的linux上安装gcc
EN

Stack Overflow用户
提问于 2010-07-09 19:19:42
回答 4查看 42K关注 0票数 30

我可以访问公共图书馆中的计算机,我想尝试一些C++,也许还有其他代码。问题是没有安装g++,我不能使用软件包安装它,因为我没有根访问权限。有没有一种“聪明”的方法可以在主文件夹中创建一个完整的编程环境?

我已经安装了gcc (我可以编译C代码)。另外,我有一个一致的主文件夹。我不知道在哪里可以找到预编译的g++,我只找到了源代码,但我不知道如何处理它。我试图让他们安装这个,但它不起作用:)

EN

回答 4

Stack Overflow用户

发布于 2012-12-26 11:08:36

如果您想以本地用户的身份安装它

GNU GSRC提供了一种简单的方法

链接:http://www.gnu.org/software/gsrc/

配置完成后,只需指定以下命令:

代码语言:javascript
复制
cd gsrc
make -C pkg/gnu/gcc 
make -C pkg/gnu/gcc install

第二步也可以改变,以提高N核系统的速度:

代码语言:javascript
复制
make -C pkg/gnu/gcc MAKE_ARGS_PARALLEL="-jN"
票数 12
EN

Stack Overflow用户

发布于 2010-07-09 19:31:41

您可以使用--前缀参数运行配置脚本:../gcc-4.5.0/configure --prefix=/home/foo/bar。由于c++标准库很可能与系统上的标准库不同,因此必须先设置export LD_LIBRARY_PATH=/home/foo/bar/lib,然后才能启动由该编译器编译的程序。

票数 11
EN

Stack Overflow用户

发布于 2010-07-09 19:34:33

有一次,很久以前(1992年左右),当我购买了一个没有开发环境的SCO系统时,我经历了类似的事情。将它引导到拥有一个完整的开发环境是一个巨大的痛苦,而且一点也不容易。在系统上有库头文件或gcc将使您的工作变得容易得多。

这在很大程度上取决于这个库对安装了什么类型的东西有多讨厌。如果没有gcc,你的工作就会变得有点困难。如果那里没有glibc的头文件,那么您的工作就会困难得多。

另外,你是否在系统上有一个帐户,这样你就有了一个从登录到登录都一致的主文件夹?

如果你在那里没有gcc,你需要找到一个预编译的gcc/g++二进制文件,并将其安装在某个地方。如果那里没有头文件,则需要找到这些文件的副本并将其放入系统中。

不过,在你的家庭文件夹中安装gcc并没有什么“标准”的方法。所有的解决方案都将涉及到某种方式的手动滚动。

你有没有问过图书馆管理员,他们是否可以更改安装的内容,因为你想学习一点编程知识,并且只能访问他们的计算机来做这件事?这可能是最简单的解决方案。

从你的评论来看,你似乎有gcc,如果你能编译C代码,你就有了库头文件。所以现在的问题是编译你自己的g++版本。您可能会找到一种方法,诱使系统上的包管理器将二进制包安装到系统文件夹以外的其他位置。我认为这个解决方案不如编译你自己的解决方案有趣,而且我认为可能还存在一些微妙的问题,因为安装的软件包可能希望在特定位置找到某些东西,但在那里找不到它们。

首先要做的是确保您下载了正确的gcc包的源代码。找到它的地方是GNU United States mirror page。您希望在所选的镜像站点上找到gcc-4.5.0.tar.bz2gcc-4.5.0.tar.gz文件。它可能位于gcc目录和gcc-4.5.0子文件夹中。

下载完成后,您应该将其解压。一般来说,你不应该在你解压的文件夹中构建“gcc”。因此,创建另一个同级文件夹,您实际上希望在标记为gcc-build的文件夹中构建它。那么你想要的命令是../gcc-4.5.0/configure --prefix=$HOME/.local --enable-languages='c c++'

为了能够进行自我编译,gcc确实需要安装一些其他的软件包。您可以对这些包使用相同的--prefix行,将它们安装在相同的位置。gcc的网站上有一个list of pre-requisite packages

$HOME/.local在某种程度上是每个用户安装东西的标准接受位置。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3212099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档