没有 root 访问权限的 linux 服务器上的 C++11 兼容编译器?

标签 c++ linux gcc c++11 clang

<分区>

在没有 root (sudo) 访问权限的 linux web 服务器上安装 c++11 兼容编译器的最简单方法是什么?当前的 gcc 版本是 g++ (GCC) 4.4.7 20120313。我已经尝试过:

cp: cannot stat `libgcc_s.so.1': 没有这样的文件或目录"

  • 从头开始构建现代 clang/llvm。这似乎编译正确,二进制文件可以编译非常简单的程序。但是无法编译使用许多标准库类或例程的程序。

是否有一种万无一失(或傻瓜)的方法来从头构建一个可用的编译器?

或者,更好的是,有没有办法在没有 root 访问权限的情况下安装编译器二进制文件和标准库?

最佳答案

您的一个问题中有 4 个不同的问题:

问题一:哪个版本的GCC完全支持C11。

答案 1:据我所知,完整的 C11 支持随 GCC 4.7.3 或更高版本一起提供。

问题 2:我的 libgcc_s.so.1 或任何 libgcc*.so* 在哪里

答案 2:这是编译器安装问题,依赖于发行版。例如我的位于“/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.3/”。如果您使用的是基于包的发行版 - 寻找包拥有 libgcc。每个发行版都必须提供搜索工具,让您找到哪个包拥有(包含)该库。

问题 3:编译“hello world”是否需要 root 权限?

答案 3:快点 - 不,你不应该或检查你的安装状态。可能有人玩过 chmod 吗?

问题 4:从哪里获得 GCC-4.7.3 或更高版本?

答案 4:在存储库中取决于您的发行版。 Debian 和 Ubuntu 使用 apt-get,基于 RPM 的发行版坚持使用 rpm 和 yum。我可爱的 ​​gentoo 有 eix/emerge 魔法。 Slackware 和 friend 们正在使用自己的 *.TGZ 格式。

没有 root 访问权限的管理任务通常是不可能的,但请检查您是否可以 sudo。我想您使用的是 Ubuntu 的一种风格。如果是这样 - 使用 sudo。

关于没有 root 访问权限的 linux 服务器上的 C++11 兼容编译器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25733130/

相关文章:

c++ - 基于C++ CRTP的数据流输出类设计简化

xml - xsltproc 合并 xml 文件不起作用

调用 Web 服务时出现 javax.xml.rpc.JAXRPCException : java. io.IOException

在 GCC 或 Cygwin 中创建 DLL?

c++ - 为什么我的派生类找不到我的基类的类型别名?

c++ - 拦截服务器和客户端中的 gRPC C++ 调用

c++ - 为什么 boost::program_options::bool_switch 的行为不像我预期的那样?

linux - GIT 不推送我的文件

macos - 海湾合作委员会警告 : implicit declaration of function 'puts' is invalid in C99

c++ - 构建 gcc-4.8.2 时如何理解这些可怕的错误?