Diferenças entre edições de "Compilação do Kernel"
Saltar para a navegação
Saltar para a pesquisa
(Há 16 edições intermédias do mesmo utilizador que não estão a ser apresentadas) | |||
Linha 1: | Linha 1: | ||
− | = Genérico / Vanilla = | + | = Genérico/Vanilla = |
+ | Antes de compilar o novo kernel, é necessário instalar as seguintes dependências: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
*build-essential | *build-essential | ||
*libncurses-dev | *libncurses-dev | ||
Linha 12: | Linha 7: | ||
*flex | *flex | ||
*libelf-dev | *libelf-dev | ||
+ | *libssl-dev | ||
− | + | De seguida: | |
− | * | + | *Entrar no directório descompactado do Kernel |
− | |||
+ | <syntaxhighlight lang="bash"> | ||
+ | cd linux-4.17.12 | ||
+ | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− | |||
+ | *Limpar a pasta do código fonte de todas as configurações e objectos já construídos. | ||
− | + | <syntaxhighlight lang="bash"> | |
− | |||
− | |||
− | |||
− | = | ||
− | |||
− | |||
− | |||
− | |||
− | |||
make mrproper | make mrproper | ||
+ | </syntaxhighlight> | ||
Linha 40: | Linha 27: | ||
*Entrar no menu de configuração do Kernel. | *Entrar no menu de configuração do Kernel. | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
make menuconfig | make menuconfig | ||
+ | </syntaxhighlight> | ||
Linha 46: | Linha 36: | ||
*Compilar o novo Kernel. | *Compilar o novo Kernel. | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
make | make | ||
− | + | </syntaxhighlight> | |
ou | ou | ||
+ | <syntaxhighlight lang="bash"> | ||
make -j4 (em que o 4 corresponde ao número de núcleos que o processador possui) | make -j4 (em que o 4 corresponde ao número de núcleos que o processador possui) | ||
− | + | </syntaxhighlight> | |
ou | ou | ||
+ | <syntaxhighlight lang="bash"> | ||
time make -j4 (onde o time vai permitir contabilizar o tempo que demora a executar o comando) | time make -j4 (onde o time vai permitir contabilizar o tempo que demora a executar o comando) | ||
+ | </syntaxhighlight> | ||
*Verificar tamanho do novo Kernel | *Verificar tamanho do novo Kernel | ||
+ | <syntaxhighlight lang="bash"> | ||
ls -l arch/x86/boot | ls -l arch/x86/boot | ||
+ | </syntaxhighlight> | ||
+ | |||
Verificar o tamanho do ficheiro bzImage. | Verificar o tamanho do ficheiro bzImage. | ||
Nota: O Kernel original, depois de compilado, tinha +/- 8,4MB. Em algumas experiências, foi possível reduzir o tamanho do Kernel para +/- 5,7MB. | Nota: O Kernel original, depois de compilado, tinha +/- 8,4MB. Em algumas experiências, foi possível reduzir o tamanho do Kernel para +/- 5,7MB. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= Gentoo = | = Gentoo = |
Edição atual desde as 17h39min de 29 de agosto de 2018
Genérico/Vanilla
Antes de compilar o novo kernel, é necessário instalar as seguintes dependências:
- build-essential
- libncurses-dev
- bison
- flex
- libelf-dev
- libssl-dev
De seguida:
- Entrar no directório descompactado do Kernel
cd linux-4.17.12
- Limpar a pasta do código fonte de todas as configurações e objectos já construídos.
make mrproper
Nota: Este comando ao ser executado depois de se fazer alguma modificação no kernel, vai apagar tudo o que foi modificado, voltando a colocar o estado inicial.
- Entrar no menu de configuração do Kernel.
make menuconfig
Nota: Neste passo, cada um deve retirar o que achar desnecessário para o kernel que está a construir, ou adicionar. No final, será criado um ficheiro .config com todas as modificações.
- Compilar o novo Kernel.
make
ou
make -j4 (em que o 4 corresponde ao número de núcleos que o processador possui)
ou
time make -j4 (onde o time vai permitir contabilizar o tempo que demora a executar o comando)
- Verificar tamanho do novo Kernel
ls -l arch/x86/boot
Verificar o tamanho do ficheiro bzImage.
Nota: O Kernel original, depois de compilado, tinha +/- 8,4MB. Em algumas experiências, foi possível reduzir o tamanho do Kernel para +/- 5,7MB.