【问题标题】:How can I use/install "make" on the Amazon Linux AMI for EC2?如何在 Amazon Linux AMI for EC2 上使用/安装“make”?
【发布时间】:2012-03-21 14:23:48
【问题描述】:

我是 Amazon EC2 的新用户。

我想在 EC2 上编译 pptpd 包,但收到以下错误:

[root@ip-10-112-xxx-xxx /]# /var/tmp/rpm-tmp.2eILT0: line 58: /usr/bin/make: No such file or directory

我搜索了整个根目录树,但make 不可用:

[root@ip-10-112-59-187 /]# find . -name "make"
./etc/mail/make

我想知道 make 最初是否实际安装在 Amazon Linux AMI 上?如果没有,如何安装?

【问题讨论】:

  • 它与 EC2 无关 - 这是 Linux 问题
  • EC2 最初应该包含“make”,为什么不呢?我不认为这是一个纯粹的 linux 问题。
  • EC2 只是一项服务,您可以在上面运行什么。
  • 但是没有“make”,我什至不知道如何在上面安装软件。
  • 我们正在讨论另一种语言。什么操作系统?

标签: amazon-ec2 amazon-web-services amazon-ami ec2-ami


【解决方案1】:

前言

Amazon Linux AMI (大致)基于CentOS 和一个完美的 EC2 操作系统,实际上它是由 Amazon 专门为 EC2 量身定制的:

Amazon Linux AMI 是一个受支持和维护的 Linux 映像 由 Amazon Web Services 提供,用于 Amazon Elastic Compute 云 (Amazon EC2)。它旨在提供稳定、安全和 用于运行应用程序的高性能执行环境 亚马逊 EC2。它还包括可轻松集成的软件包 与 AWS,[...]。 Amazon Web Services 提供持续的安全性和 对所有运行 Amazon Linux AMI 的实例的维护更新。 [...] [强调我的]

然而,它确实没有像其他一些发行版那样被广泛使用,最流行的可能是 Ubuntu,因为它普遍受欢迎,特别是它对 EC2 的长期定制支持(参见例如EC2StartersGuide, Ubuntu Cloud Images 或在alestic 上方便地列出适用于 Amazon EC2 的 Ubuntu AMI)。这会产生两个缺点:

  • 您会发现更多示例/教程/等。对于基于 Ubuntu 的 EC2,最终让事情变得更简单。
  • 您会发现可用于 CentOS 的预编译包稍微少一些,最终需要自己编译(但见下文)。

解决方案

也就是说,CentOS(以及 Amazon Linux AMI)使用 Yum 软件包管理器从 CentOS(和第 3 方)存储库安装和更新软件包(Debian/Ubuntu 使用 @ 987654327@ 包管理器代替 - 固有概念非常相似),参见例如Amazon Linux AMI Basics 中的添加包部分:

除了包含在 Amazon Linux AMI 中的软件包之外,Amazon 提供了一个 yum 存储库,其中包含常见的 Linux 应用程序 在 Amazon EC2 内部使用。 Amazon Linux AMI 配置为指向 默认情况下,所有 yum 操作都到此存储库。包可以是 通过发出 yum 命令安装。例如:

# sudo yum install httpd

因此,您可以通过yum install make 安装make(您可以通过yum list all 获取所有现成软件包的列表)。

但请注意,您实际上可能不需要这样做,因为 Amazon Linux AMI 已构建为与 CentOS 系列发行版二进制兼容,因此 可以在其上运行的软件包CentOS 也应该在 Amazon Linux AMI 上运行。 [强调我的]

所需的软件包pptpd 也不是 CentOS 上标准软件库的一部分,但它可以在第 3 方 Extra Packages for Enterprise Linux (EPEL) 软件库中使用(请参阅 Letter P) - 我无法评论使用的可行性这一个与编译你自己的。

祝你好运!

【讨论】:

  • 谢谢,这正是我需要的。
  • 只要您确保获得正确版本的软件和所有依赖项,我还没有找到任何无法运行的软件包。我相信 Amazon Linux 现在与 CentOS 6 兼容。
  • @bwight:感谢您提供的额外信息,我确实不确定 CentOS 6 的兼容性(不幸的是,pptpd 软件包似乎还不适用于 CentOS 6)。
  • 我在某处读到过这种情况,我将不得不环顾四周,看看是否能找到任何证据。我知道大约 6 个月前,文档专门说 CentOS 5.5。
  • 查看 /etc/yum.repos.d./epel.repo 你可以看到他们正在加载 EPEL6 的 URL,这让我觉得它现在是 CentOS 6 而不是 5.5 我可能是错的。
【解决方案2】:

默认情况下,Amazon Linux AMI 上不安装 Make。但是,您可以使用 yum 轻松安装它。如果您选择只安装 make,那么稍后您可能会在编译过程中遇到其他包的一些错误。如果您要编译软件,您可能只想一次安装所有开发工具。

sudo yum groupinstall "Development Tools"

【讨论】:

    【解决方案3】:
    sudo yum groupinstall "Development Tools"
    

    根据文档:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/compile-software.html

    【讨论】:

    • Stackoverflow 是一个英文问答网站。请相应地写你的帖子。我已将您的答案编辑为英文翻译,并包含指向您链接的文档的英文链接。
    猜你喜欢
    • 2019-08-06
    • 2018-05-06
    • 1970-01-01
    • 2018-09-09
    • 2012-03-01
    • 2014-08-05
    • 2022-05-25
    • 1970-01-01
    • 2017-10-23
    相关资源
    最近更新 更多