Compilar último kernel estável
Para obter sempre o mais recente kernel estável (neste momento é o 2.6.26) podemos usar o git para obter a tree:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.26.y.git
Com isto será criado um directório chamado linux-2.6.26.y.
Lá dentro estará o código do kernel estável da série 2.6.26.
Antes demais devemos certificarmo-nos que temos o pacote virtual build-essential instalado. Sem este não teremos as ferramentas nem as bibliotecas básicas para compilar o kernel.
Para começar-mos o processo podemos e devemos adequar o kernel que vamos compilar o melhor possível à máquina na qual vai ser usado.
Assim para fazermos o .config (ficheiro de configuração usado para a compilação) podemos correr:
make menuconfig
Para o menu para a configuração ser efectivamente compilado devemos ter o pacote libncurses-dev.
Se preferirmos algo mais gráfico podemos fazer antes:
make gconfig
Com isto obtemos uma aplicação gráfica direccionada para Gnome (feita em GTK). Se KDE for o seu veneno pode então usar:
make xconfig
Para obter a aplicação em QT.
Note-se que é necessário ter as bibliotecas -devel ou do gnome ou do kde para efectuar qualquer um destes dois comandos.
Após isto podemos passar para a compilação (que no final resultará num ficheiro .deb) propriamente dita:
fakeroot make-kpkg --initrd kernel-image --revision 2.6.26.5-1
No directório acima do qual está o código fonte para o kernel deverá no final aparecer um ficheiro .deb. Assim para o instalar basta correr como root ou com sudo:
dpkg -i ficheiro.deb
Para as próximas compilações (ou por ter saído uma nova versão ou por modificar o .config) devemos fazer:
fakeroot make-kpkg clean
Isto irá limpar o directório de coisas indesejáveis para a próxima compilação.
Para não haver problemas devemos ir aumentando o número da revisão.
O make-kpkg tem muitas opções, pode sempre passar pelo manual para verificar se existem algumas que lhe interessem.
Se usar os drivers binários da nvidia e os tiver compilado deverá fazê-lo novamente quando estiver a correr no novo kernel.
No meu caso como usei o module-assistant bastou:
sudo m-a a-i nvidia
Em que m-a é o module-assistant com a opção a-i, auto-install.
Num próximo post mostrarei como compilar o módulo da nvidia com o module-assistant.
- o blogue de nifan
- Clique Iniciar Sessão ou registar-se para colocar comentários







Comentários
Para definir o número de
Para definir o número de jobs (make -j X ) para a compilação do kernel deve-se usar a variável CONCURRENCY_LEVEL. Algo assim:
$ CONCURRENCY_LEVEL=4 fakeroot make-kpkg --initrd kernel-image --revision 1
Isto será o mesmo que fazer make -j 4.
Tarball do kernel
Viva, tudo bem
Dúvida: Não se pode fazer simplesmente o download do tarball disponível em http://www.kernel.org/ ??
MCumprimentos
______________________________________
antoniocostamoreira@gmail.com
Linux User: #473675 - Ubuntu 8.04 LTS
Claro que sim, mas acho que
Claro que sim, mas acho que assim é bastante mais simples :)
Basta fazeres git pull que obténs o código mais recente, senão terias ou de sacar de cada vez o tarball completo ou começares com um tarball e ir aplicando o patch de cada nova versão.