无需 root 权限即可在 Linux 上安装 gcc

2024-11-14 08:29:00
admin
原创
18
摘要:问题描述:我可以在公共图书馆使用计算机,我想尝试一些 C++ 和其他代码。问题是没有安装 g++,我无法使用软件包安装它,因为我没有 root 访问权限。有没有一种“智能”方法可以在主文件夹中创建完整的编程环境?我安装了 gcc(我可以编译 C 代码)。此外,我有一个一致的主文件夹。我不知道在哪里可以找到预编...

问题描述:

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

我安装了 gcc(我可以编译 C 代码)。此外,我有一个一致的主文件夹。我不知道在哪里可以找到预编译的 g++,我只找到了源代码,但我不知道该怎么处理它。我试图让他们安装这个,但没有成功 :)


解决方案 1:

如果你想以本地用户身份安装

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

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

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

cd gsrc
make -C pkg/gnu/gcc 
make -C pkg/gnu/gcc install

第二步也可以改变以加速 N 核系统:

make -C pkg/gnu/gcc MAKE_ARGS_PARALLEL="-jN"

解决方案 2:

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

解决方案 3:

很久以前(大约 1992 年),我购买了一台没有开发环境的 SCO 系统,也经历过类似的事情。将它引导到拥有完整的开发环境是一件非常痛苦的事情,而且一点也不容易。如果系统上有库头文件或 gcc,你的工作就会轻松很多。

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

另外,您是否在系统上拥有一个帐户,以便您拥有一个从登录到登录都一致的主文件夹?

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

不过,没有在主文件夹中安装 gcc 的“标准”方法。所有解决方案都会涉及某种手动操作。

您是否问过图书管理员,他们是否可以更改已安装的内容,因为您想学习一点编程知识,但只能使用他们的计算机来学习?这可能是最简单的解决方案。

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

首先要确保你已下载了正确的 gcc 软件包源代码。你可以在GNU 美国镜像页面找到它。你需要在所选的镜像站点上找到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 网站有一个先决条件软件包列表。

$HOME/.local是每个用户安装东西的标准接受地点。

解决方案 4:

如果您有 fakeroot,您可以使用它将 ~/some-path 设置为 root 来安装软件包。或者,您可以设置 chroot 环境来执行相同操作。

有了这些,您就可以使用在系统上dpkg -i package.deb安装 gcc 包。您需要单独下载并安装每个包(例如从 debian 网站下载)——至少binutilsglibc和。linux-headers`gcc`

如果您在另一个系统上,您将需要获取该系统的正确软件包并使用相应的包管理器安装它们。

解决方案 5:

如果您需要 gcc 来安装 python 包,可以在安装之前尝试以下操作:

conda install gcc gxx_linux-64
相关推荐
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   601  
  华为IPD与传统研发模式的8大差异在快速变化的商业环境中,产品研发模式的选择直接决定了企业的市场响应速度和竞争力。华为作为全球领先的通信技术解决方案供应商,其成功在很大程度上得益于对产品研发模式的持续创新。华为引入并深度定制的集成产品开发(IPD)体系,相较于传统的研发模式,展现出了显著的差异和优势。本文将详细探讨华为...
IPD流程是谁发明的   7  
  如何通过IPD流程缩短产品上市时间?在快速变化的市场环境中,产品上市时间成为企业竞争力的关键因素之一。集成产品开发(IPD, Integrated Product Development)作为一种先进的产品研发管理方法,通过其结构化的流程设计和跨部门协作机制,显著缩短了产品上市时间,提高了市场响应速度。本文将深入探讨如...
华为IPD流程   9  
  在项目管理领域,IPD(Integrated Product Development,集成产品开发)流程图是连接创意、设计与市场成功的桥梁。它不仅是一个视觉工具,更是一种战略思维方式的体现,帮助团队高效协同,确保产品按时、按质、按量推向市场。尽管IPD流程图可能初看之下显得错综复杂,但只需掌握几个关键点,你便能轻松驾驭...
IPD开发流程管理   8  
  在项目管理领域,集成产品开发(IPD)流程被视为提升产品上市速度、增强团队协作与创新能力的重要工具。然而,尽管IPD流程拥有诸多优势,其实施过程中仍可能遭遇多种挑战,导致项目失败。本文旨在深入探讨八个常见的IPD流程失败原因,并提出相应的解决方法,以帮助项目管理者规避风险,确保项目成功。缺乏明确的项目目标与战略对齐IP...
IPD流程图   8  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用