为了编译需要安装openssl
和openssl-dev
NGinx (我是一本书的指南)。
所以我做这个:
sudo apt-get install openssl openssl-dev
但是我得到一个错误,告诉我不可能findopenssl-dev
。 还有一些谷歌search后,似乎libssl-dev
等于openssl-dev
,这是真的吗? ( apt-get
在我的服务器上findlibssl-dev
)
这是我的服务器版本:2.6.32-22-服务器
任何帮助欢迎!
如果Ubuntu(或其他Debian派生安排)版本的软件包版本的依赖性与您尝试构build的版本的软件版本相同,则可以运行apt-get build-dep nginx
或aptitude build-dep nginx
– 这不会安装nginx软件包,而是会安装所有那些列为依赖项(和它们的依赖关系,如往常一样),其中包括libssl-dev
(您正在寻找的软件包)。
在大多数情况下,这将允许成功完成另一个版本(推测较新版本)的构build,并且可以节省您自己一个一个地安装每个库及其头文件。 即使在您尝试构build的其他版本中存在新的依赖关系, build-dep <package>
也是一个开始的好地方,因为这意味着您只需手动安装额外的新依赖项。
举个例子,我的一台服务器的结果是:
user@host:~$ sudo aptitude build-dep nginx Reading package lists... Done Building dependency tree Reading state information... Done Reading extended state information Initialising package states... Done The following NEW packages will be installed: autotools-dev cvs{a} debhelper gettext{a} html2text{a} intltool-debian{a} libcroco3{a} libmail-sendmail-perl{a} libpcre3-dev libpcrecpp0{a} libssl-dev libsys-hostname-long-perl{a} po-debconf{a} zlib1g-dev 0 packages upgraded, 14 newly installed, 0 to remove and 19 not upgraded. Need to get 7,217kB of archives. After unpacking 22.9MB will be used. Do you want to continue? [Y/n/?]
它打算安装一些库和头文件,以启用nginx构build,而不是nginx本身。
有一点需要注意的是,如果你正在编译你自己的副本,因为你需要不同的版本选项,而不是因为某种原因需要一个不同的版本,那么你可以更好地从版本库的源代码编译,而不是直接使用上游源代码。 这个问题是快速search出来的第一个有用的页面,虽然如果你需要的话,你很容易find更详细的教程。
另外需要注意的一点是:由于apt-get build-dep
安装的软件包将被标记为手动安装,就像您现在正在做的那样手动完成。 这意味着你不能一次把它们全部删除(没有apt-get unintall-dep
或者类似的东西) – 尽pipe这与从手动库/头文件安装中得到的情况没有什么不同(我只提到了事实上,正如有些人所期望的那样,有一种方法可以撤销build-dep
运行操作,而且没有)。
你是对的。 这是libssl-dev