什么是“build-essential”和“build-dep”?

什么是“build-essential”和“build-dep”?

我正在研究如何在 Xubuntu 10.04 中安装 Ruby 1.9.1,然后我遇到了这个命令构建必需品构建依赖多次。有时它后面跟着一些包裹,有时它前面和后面都有包裹。

我正在看的两个例子是:

sudo apt-get 安装 build-essential zlib1g zlib1g-dev zlibc libruby1.9 libxml2 libxml2-dev libxslt-dev

sudo apt-get build-dep ruby​​1.9

sudo apt-get 安装 ruby​​ irb ri rdoc ruby​​1.8-dev libzlib-ruby libyaml-ruby libreadline-ruby libncurses-ruby libcurses-ruby libruby libruby-extras libfcgi-ruby1.8 build-essential libopenssl-ruby libdbm-ruby libdbi-ruby libdbd-sqlite3-ruby sqlite3 libsqlite3-dev libsqlite3-ruby libxml-ruby libxml2-dev

答案1

软件包build-essential是编译 Debian 软件包所需的所有软件包的参考。它通常包括 GCC/g++ 编译器和库以及一些其他实用程序。

在此处查看文档

答案2

该命令的sudo apt-get build-dep packagename意思是“以 root 身份安装‘packagename’的所有依赖项,以便我可以构建它”。因此,build-dep 是一个 apt-get 命令,就像 install、remove、update 等一样。

build-essential是一个包含对通常构建软件所需的大量包的引用的包。

答案3

build-essential有一个神奇的特性:它不需要被列为源包Build-Depends控制字段(debian-packages)下的构建依赖项,如https://www.debian.org/doc/debian-policy/ch-source.html#s-pkg-relations

您可以在以下位置获取 build-essential 软件包的列表:

cat /usr/share/doc/build-essential/list

您还可以使用以下命令确定某个包是否属于build-essential其中的一部分:

apt-cache show gcc

其中写道:

Build-Essential: yes

答案4

“build-essential” 包含用于从源代码编译/构建软件的工具(如 gcc 编译器、make 工具等)。因此,您可以从(通常是 C)源文件开始,然后从中创建可执行文件。

如果你只是想安装 Ruby,我强烈建议你使用RVM(Ruby 版本管理器)

按照“Github 存储库(推荐)”下的说明进行操作

请注意,您需要先安装 Git 版本控制软件。apt-get install git-core如果您还没有安装,请使用它。

相关内容