Что такое Двоичный пакет? Как создать их?

Предполагая, что Ваш IP и шлюз правильно настроены, Ваши серверы имен DNS не. Они могут быть настроены в /etc/resolv.conf, в следующем формате:

nameserver 8.8.8.8

Другая опция состоит в том, чтобы установить resolvconf пакет и добавить следующее к /etc/network/interfaces.

dns-nameserver 8.8.8.8

Затем перезапустите интерфейс для изменений для взятия влияния:

ifdown eth0
ifup eth0
12
30.10.2015, 20:17
2 ответа
[114501] В строгом смысле двоичный файл - это файл, который не является символом, закодированным как читаемый человеком текст. В более широком смысле слова "двоичный" относится к файлу, который скомпилирован, исполняемый код, хотя сам файл может быть не исполняемым (речь идет не столько о разрешениях, сколько о возможности запуска в одиночку; некоторые файлы с двоичным кодом, такие как библиотеки, скомпилированы, но независимо от разрешений, они не могут быть запущены сами по себе). Двоичный файл, который запускается как отдельный исполняемый файл, является "исполняемым файлом", хотя не все исполняемые файлы являются двоичными (и речь идет о разрешениях: исполняемые текстовые файлы, которые вызывают интерпретатор с помощью shebang, такие как [115028]#!/bin/sh[115029] тоже являются исполняемыми файлами).

  • Что такое двоичный пакет?
  • Двоичный пакет в контексте linux - это пакет приложений, который содержит (предварительно собранный) исполняемые файлы, а не исходный код.
  • Обратите внимание, что это не значит, что файл пакета сам по себе является исполняемым файлом. Файл пакета - это архив (вроде [115032].zip[115033]), который содержит другие файлы, а "двоичный" файл пакета - это файл, который специально содержит исполняемые файлы (хотя опять же, исполняемые файлы не обязательно являются подлинно двоичными, и на самом деле двоичные пакеты могут использоваться для скомпилированных библиотек, которые являются двоичным кодом, но не исполняемыми). Однако, пакет должен быть распакован, чтобы вы могли получить доступ к этим файлам.
  • Обычно об этом заботится система управления пакетами (например, apt/dpkg), которая скачивает пакет, распаковывает и устанавливает для вас двоичные файлы внутри.

Какова разница между двоичным пакетом и пакетом deb?

$text = gc tale.txt
$fs = [System.IO.File]::OpenWrite("tale.txt")
$sw = New-Object System.IO.StreamWriter($fs)
$sw.Write($text.Replace("the",""))
$sw.Dispose()

Нет -- [115036]. Пакеты deb[115037] являются двоичными пакетами, хотя есть [115038].deb[115039], которые содержат исходный текст, обычно к их имени добавляется [115040]-src[115041].

Я запускаю какой-то прямой пакет в формате "xyz.linux.run" Что это за пакеты?

Обычно это самораспаковывающиеся двоичные пакеты; они работают путём встраивания двоичной полезной нагрузки в сценарий командной строки (shell script). "Самораспаковывание" означает, что вам не нужно вызывать другое приложение (например, менеджер пакетов) для распаковывания и использования. Однако, так как они не работают с пакетным менеджером, разрешение их зависимостей может быть больше похоже на крэпшот, и поэтому некоторые такие пакеты используют [115044] статически скомпонованные[115045] исполняемые файлы (в них встроены все необходимые библиотеки), что тратит немного памяти при их использовании.[114518].

17
27.01.2020, 19:55
[114734], так как на остальную часть вашего вопроса ответили златоглазые, В первой части я взвесю, как собирать вещи из исходных текстов.[12179]На самом деле короткая версия заключается в том, что когда вы скачиваете файлы исходных текстов из Интернета, с ними обычно ассоциируется readme, которая должна точно подсказать вам, как запустить программу.[12180]Но то, что я говорю вам читать readme, на самом деле не дает ответа на вопрос, так что в базовом смысле вы можете написать очень простую программу, которая [12181]и набрать [115239]gcc helloWorld. c[115240] и [115241]gcc[115242] соберут этот двоичный файл и при запуске выведут на консоль программу, которая пишет "Hello World!".[12182]Хорошо, итак, теперь Вы собрали программу, однако не будет ли отстойно вводить каждый файл исходного текста, который Вы хотели скомпилировать каждый раз, когда Вам нужно было что-то скомпилировать? Для этого и нужны [115243]makefiles[115244]. Если вы сталкиваетесь с программой, у которой есть куча файлов исходного текста, то обычно она поставляется с makefile или другим файлом автоматизации сборки ([115245]ant[115246], [115247]Cmake[115248], или [115249]autoconf[115250], или что-то в этом роде). [12183] Для сборки этих типов программ просто запустите [115251] и сделайте <сборку цели>[115252] внутри каталога. makefile для моей программы hello world может включать в себя цель под названием [115253]helloworld[115254], которая просто компилирует helloWorld.c. Я бы запустил ее с помощью [115255]make helloworld[115256], и она бы выдала двоичный файл.[12184]Обратите внимание, что сборка вещей из исходных текстов может занять очень много времени и большой объем памяти ([115257]команда Chromium даже рекомендует второй жесткий диск для сборки исходных текстов![115258]). Также обратите внимание, что когда вы собираете вещи из исходников, вам придется иметь дело с зависимостями, а не с менеджером пакетов, который делает это за вас[114747].
6
27.01.2020, 19:55

Теги

Похожие вопросы