Встановіть openssl-dev на сервер Ubuntu


44

Для того, щоб скласти NGinx, потрібно встановити opensslі openssl-dev(я слідую за книжковою інструкцією).

Отже, я роблю це:

sudo apt-get install openssl openssl-dev

Але я отримую помилку, кажучи мені, що її неможливо знайти openssl-dev. Також після деякого гуглінгу здається, що libssl-devце дорівнює openssl-dev, правда це? ( apt-getзнайдено libssl-devна моєму сервері)

Ось моя версія сервера: 2.6.32-22-сервер

Будь-яка допомога ласкаво просимо!

Відповіді:


36

Якщо ймовірність того, що залежності для версії пакету, що знаходиться у випуску Ubuntu (або інших домовленостей, отриманих Debian), збігається з deps для версії, яку ви намагаєтеся створити, ви можете запустити apt-get build-dep nginxабо aptitude build-dep nginx- це не встановиться пакет nginx, але замість цього встановить усі перераховані як залежності (та їх залежності, як завжди), що включає libssl-dev(пакет, який ви зараз шукаєте).

У більшості випадків це дозволить успішно завершити збірку іншої (імовірно, нової) версії, і це заощадить вам самостійно встановити кожну бібліотеку та файли її заголовків. Навіть якщо в іншій версії, яку ви намагаєтеся побудувати, 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, але не nginx.

Варто зазначити, що якщо ви збираєте свою власну копію, тому що хочете різні варіанти збірки, а не потребуєте іншої версії з якоїсь причини, вам може бути краще компілювати з джерела сховища для пакета, а не безпосередньо використовувати вихідні джерела. Це запитання ТА є першою корисною сторінкою, яка вийшла з швидкого пошуку, хоча ви, швидше за все, знайдете більш детальні підручники, якщо вам це потрібно.

Ще одна невелика річ, яку слід зазначити: пакунки, встановлені в результаті, apt-get build-depбудуть позначені як встановлені вручну, як якщо б ви це зробили вручну, як це робите в даний час. Це означає, що ви не можете їх видалити за один раз (немає apt-get unintall-depабо подібне) - хоча це нічим не відрізняється від ситуації, яку ви отримаєте з встановлених вручну бібліотеки / заголовків (я лише зазначу той факт, як там очікують деякі люди бути однокроковим способом скасувати build-depоперацію, а її немає).



11

Я прийшов сюди у вересні 2018 року. Ця ж проблема в Ubuntu 18.04.

Вирішено:

sudo apt install libssl1.0-dev
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.