如何在Amazon Linux AMI for EC2上使用/安装“make”?

时间:2012-03-03 06:56:15

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

我是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

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

3 个答案:

答案 0 :(得分:8)

前言

Amazon Linux AMI(松散地)基于CentOS和非常适合EC2的操作系统,事实上它已由亚马逊为EC2专门定制:

  

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

然而,它确实没有像其他一些发行版那样被广泛使用,其中最受欢迎的可能是Ubuntu,因为它一般受欢迎,特别是EC2专用的长时间定制支持(参见例如{{3} } EC2StartersGuideUbuntu Cloud Images上用于Amazon EC2的 Ubuntu AMI 的方便列表。这产生了两个缺点:

  • 你会发现更多的例子/教程/等。对于基于Ubuntu的EC2,最终使事情变得更容易。
  • 你会发现CentOS可用的预编译包略少,需要最终编译自己的 (但见下文)。

解决方案

也就是说,CentOS(以及Amazon Linux AMI依次)使用alestic包管理器来安装和更新CentOS(和第三方)存储库(Debian / Ubuntu使用)相反,Yum包管理器 - 固有的概念非常相似),参见例如<{3}}中的添加包部分:

  

除Amazon Linux AMI,Amazon中包含的软件包外   提供了一个由常见的Linux应用程序组成的yum存储库   在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标准存储库的一部分,但它可以在第三方APT存储库中找到(参见Amazon Linux AMI Basics) - 我不能评论使用这一个与编译自己的可行性。

祝你好运!

答案 1 :(得分:4)

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

sudo yum groupinstall "Development Tools"

答案 2 :(得分:1)

sudo yum groupinstall "Development Tools"

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