如何编译并从源代码安装程序

实际上这限制了我对Linux的满意度。 如果应用程序不在数据库上或者没有安装程序手稿,那么之后我实际上在哪里战斗,以及如何从源代码安装应用程序。

相当于Windows,它非常容易。 您(虚拟地)要求使用安装程序应用程序,该应用程序执行向导中的每个操作。 用Linux ...不是很多。

那么,你有没有任何类型的指针或指导或存在任何类型的互联网网站,清楚地说明如何,为什么以及从源头安装Linux程序的位置?

0
2019-05-05 01:31:26
资源 分享
答案: 5

在FreeBSD中使用Ports Collection的概述:

找到港口

端口按组排列,因此如果您无法识别端口所在的组,则需要先找到它:

cd /usr/ports
make search name=myport

有时以这种方式存在太多访问权限。 我直接赞成:

find /usr/ports -name myport* -print -depth 2

考虑到端口通常有很多可供使用的变体,请查看*。 深度论证可以保证您的回归结果不会被您不太可能需要的诉讼所困扰。

安排

通常,你打算做一些安排; 像Apache和Postgres这样的软件程序几乎需要它。 有3个主要选择:命令行,设置和安排文档。 要使用命令行:

make showconfig

这肯定会详细说明默认的安排选择。 如果你喜欢默认值,那么你准备编译并安装。 除此以外,

make config

肯定会提出一个对话框,您可以在其中选择您想要的替代方案。 (不要对此感到困惑,还有make configure用您选择的备选方案配置您的端口!) 这通常已经足够了,但对于某些软件程序,如Apache,通常会有一个复杂的安排,直接的对话框不会处理。 为此,您还需要考虑Makefile,它肯定偶尔会为make提供一些额外的目标,这些目标肯定会为您提供更多细节。 继续Apache实例

make show-modules
make show-options
make show-categories

肯定会为您提供有关建立您选择的组件,字符串替代品等的详细信息。 如果您的端口的默认值非常好并且您只是想要转换几个点,您还可以简单地传递key = value集,如设置变量:

make MYVBL1=MYVAL1 ... install clean

此外,您可以使用-D替代方法设置按钮替代方案:

make -D MYVAR -D MYOTHERVAR ... install clean

尽管如此,对于错综复杂的安排,命令行将无法正常运行,而且你的前两种方法肯定都不会好得多。 在这种情况下,您可以制作排列文档,并使用__ MAKE_CONF变量将其传递给make。 FreeBSD有一个默认的安排文件:/etc/make.conf,它通常包含以前安装的端口的细节以及各种其他系统设置。 首先,使用您的ports替代创建文档,将其命名为~/myport.mk,然后将这些文档与/ etc / make合并。 CONF:

cat /etc/make.conf ~/myport.mk >> ~/make.myport.conf

你可以在检查完你的安排后:

make showconfig __MAKE_CONF=~/make.port.conf

如果每件小事看起来都很棒:

make install clean __MAKE_CONF=~/make.myport.conf

谨防! 如果您需要在make configure之后重新调整您的排列设置,或者在整个或组件中重新安装 绝对要先清除你的安排

make rmconfig

如果不这样做,肯定会导致端口子系统,端口的make默认值以及您想要的安排之间的意外通信。

对于概述来说,这是一大堆,但安排的复杂性主要涉及应用,而不是端口。 大满贯作为一个例子,实际上没有任何替代品。

分期付款

这是非常简单的组件:

make install clean

或者你可以

make build
make install
make clean

这简直就是额外的键控。

实际上就是这样。 显然,你可以做更多的事情,例如递归细节依赖性和安排选择,升级点和更多。 下面我将向您介绍手册端口区域,端口子系统的公网页(添加的make目标的优秀详细信息)以及make公网页。

0
2019-05-09 00:54:44
资源

我认为最好阅读具有您打算安装的详细程序或应用程序的文档。 通常在tarball(通常可以下载和安装的应用程序源存档)中有readmes / README,或者甚至可以读取INSTALL文档,还可以了解有关安装声明的应用程序的推荐方法的更多信息。 基本上:RTFM;)

0
2019-05-08 12:23:56
资源

最近,当我从计划主管那里安装源代码时,我开始使用“Checkinstall”。 它构建了一个来自第三个事件tarball的“计划”,之后可以通过您的计划管理设备进行安装和处理(也可以卸载)。

看看这篇文章 - http://www.linuxjournal.com/content/using-checkinstall-build-packages-source

0
2019-05-08 12:16:58
资源

通常情况下,该任务肯定会有一个互联网网站,其中包含如何构建和安装它的指南。 谷歌就是第一个。

基本上你肯定会这样做:

  1. 下载tarball(tar.gz或tar.bz2文档),这是源代码的详细信息变体的发布
  2. 使用tar zxvf myapp.tar.gz之类的命令为gzip压缩包提取tarball,或者为xz_perma_1提取压缩包tarball
  3. cd直接进入开发的目录
  4. 运行./configure && make && sudo make install

要么 :

  1. 使用git或svn或其他任何东西从主源数据库中获取最新的源代码
  2. cd直接进入开发的目录
  3. 运行./autogen.sh && make && sudo make install

configure和autogen.sh肯定会批准 - - prefix参数来定义软件程序的安装位置。 我建议查看我应该把自己编译的软件放在哪里?,以获得有关安装个性化构建软件程序的最有效区域的建议。

0
2019-05-08 07:30:29
资源

我只是打算补充说,有计划监督员从源头编译计划,并且还负责所有计划依赖,标志等等

。 在BSD系统中,它是ports使用Ports Collection

在Debian中,apt-get计划主管也可以从源代码安装:APT HOWTO:使用源包(与Ubuntu相同,Linux - 薄荷以及基于Debian的其他所有小东西)

Gentoo循环使用portage计划管理程序,它从源代码组装整个系统:Portage简介

Slackware可以编译计划但我不知道其中是否有任何类型的计划主管。 =)

无论如何,你可以像Sandy所说的那样不断地手工编制计划=)此外,在任何其他类型的发行版中使用apt-getportage计划主管也必须是可行的...

0
2019-05-08 06:17:52
资源