Почему в Arch Linux нет пакетов -dev?

28

Я понимаю, что исходные коды, такие как Gentoo или Slackware , не нуждаются в *-devверсиях программ. Они включают в себя исходный код, а также файлы заголовков для локальной компиляции.

Но я никогда не видел *-devпакетов в Arch Linux , хотя он основан на пакетах. Я наткнулся на множество *-devпакетов в других дистрибутивах.

Себастьян
источник

Ответы:

30

Пакеты -dev обычно содержат заголовочные файлы, примеры, документацию и тому подобное, которые не нужны для простого запуска программы (или использования библиотеки в качестве зависимости). Они оставлены для экономии места.

ArchLinux обычно просто отправляет эти файлы вместе с самим пакетом. Это требует немного больше дискового пространства для установки, но уменьшает количество пакетов, которыми вы должны управлять.

Антье-м
источник
1
Здравствуйте, спасибо за ваш ответ. Я думаю, что вы правы, потому что я заметил, что в Arch Linux я могу компилировать пакеты сразу (не нужно устанавливать -devпакеты). Не могли бы вы включить одну ссылку?
Себастьян
3
Наиболее важная ссылка, если, возможно, принцип Arch Way и принцип простоты - создание -devпакетов фактически означает сборку пакета и удаление включаемых файлов. Пакеты Archlinux, тем не менее, включают пакет в том виде, в котором он был собран (например, путем вызова make), не касаясь его впоследствии. Есть исключения из этого правила, но я не могу придумать одно, относящееся к этому вопросу.
Виланд
4

Если вы хотите отредактировать исходный код стандартных пакетов и скомпилировать их самостоятельно, вы должны использовать ABS (Arch Build System). Цитируется из Arch Linux Wiki :

Система Arch Build, сокращенно ABS, представляет собой портообразную систему для сборки и упаковки программного обеспечения из исходного кода. В то время как pacman является специализированным инструментом Arch для управления бинарными пакетами (включая пакеты, созданные с помощью ABS), ABS представляет собой набор инструментов для компиляции исходного кода в устанавливаемые пакеты .pkg.tar.gz / .pkg.tar.xz.

Это рекомендуемый метод при использовании Arch Linux.

Джейсон Аксельсон
источник
1
Вы путаете dev-пакеты с src-пакетами. Пакеты src позволяют вам пересобрать сам пакет. Пакеты dev позволяют вам создавать то, что зависит от пакета.
Мэтью Маршалл
@MatthewMarshall Ты прав. Хотя, по крайней мере, АБС связан с вопросом.
Джейсон Аксельсон