Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-doc
Path: blob/main/documentation/content/ru/books/developers-handbook/kernelbuild/_index.adoc
18099 views
---
authors: ~
description: 'Сборка и установка ядра FreeBSD'
next: books/developers-handbook/kerneldebug
params:
  path: /books/developers-handbook/kernelbuild/
prev: books/developers-handbook/partiii
showBookMenu: 'true'
tags: ["building", "installing", "kernel", "FreeBSD"]
title: 'Глава 9. Сборка и установка ядра FreeBSD'
weight: 12
---

[[kernelbuild]]
= Сборка и установка ядра FreeBSD
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: 9
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/developers-handbook/

ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]

ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]

Чтобы быть разработчиком ядра, требуется понимания процесса сборки ядра. Для отладки ядра FreeBSD необходимо уметь его собирать. Существует два известных способа сделать это:

Поддерживаемая процедура сборки и установки ядра описана в главе extref:{handbook}kernelconfig/[Сборка и установка пользовательского ядра, kernelconfig-building] Руководства FreeBSD.

[NOTE]
====
Предполагается, что читатель этой главы знаком с информацией, изложенной в главе extref:{handbook}kernelconfig/[Сборка и установка пользовательского ядра, kernelconfig-building] Руководства FreeBSD. Если это не так, пожалуйста, ознакомьтесь с упомянутой главой, чтобы понять, как работает процесс сборки.
====

[[kernelbuild-traditional]]
== Построение более быстрым, но менее надёжным способом

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

[.procedure]
. Выполните man:config[8] для генерации исходного кода ядра:
+
[source, bash]
....
# /usr/sbin/config MYKERNEL
....

. Перейдите в каталог сборки. man:config[8] выведет имя этого каталога после выполнения, как указано выше.
+
[source, bash]
....
# cd ../compile/MYKERNEL
....

. Скомпилируйте ядро:
+
[source, bash]
....
# make depend
# make
....

. Установите новое ядро:
+
[source, bash]
....
# make install
....