[FUG-BR] Compilação do Kernel do FreeBSD

Giancarlo Rubio gianrubio em gmail.com
Quarta Junho 3 09:04:40 BRT 2009


2009/6/3 Thiago Gomes <thiagomespb em gmail.com>:
> Pessoal,
>
> Lendo aqui o livro do Denis sobre FreeBSD (aliais muito bem escrito),
> ele menciona
> dois procedimentos sobre a compilação do Kernel, onde consiste em
>
> Opção 1
>
> #cd/usr/sys/i338/conf
> #cp  GENERIC kenel_Modificado_01
> #cd/usr/sys/i338/conf
> #config kernel_Modificado_01
> #cd ../compile/kernel_Modificado_01
>
> #make depend
> #make
>
> #make cleandepend
> #make clean
>
> # make install
>
>
> Opção 2 (é a que eu uso)
>
> #cd /usr/src
> #make buildkernel KERNCONF=kernel_Modificado_01
> #make installkernel KERNCONF=kernel_Modificado_01
>
> Porem segundo o autor o primeiro passo eh a forma mais recomendada.

Recomendação cada um dá a sua. A minha recomendação é a segunda porque
é mais facil!

>
> Alguma razão para isso, já que ele não deixa claro ? ??

Lendo o /usr/src/Makefile, temos o buildkernel com as linhas abaixo


# Define the user-driven targets. These are listed here in alphabetical
# order, but that's not important.
#
# Targets that begin with underscore are internal targets intended for
# developer convenience only.  They are intentionally not documented and
# completely subject to change without notice.
#
# For more information, see the build(7) manual page.
#
TGTS=   all all-man buildenv buildenvvars buildkernel buildworld \
        check-old check-old-dirs check-old-files check-old-libs \
        checkdpadd clean cleandepend cleandir \
        delete-old delete-old-dirs delete-old-files delete-old-libs \
        depend distribute distributeworld distrib-dirs distribution doxygen \
        everything hierarchy install installcheck installkernel \
        installkernel.debug reinstallkernel reinstallkernel.debug \
        installworld kernel-toolchain libraries lint maninstall \
        obj objlink regress rerelease showconfig tags toolchain update \
        _worldtmp _legacy _bootstrap-tools _cleanobj _obj \
        _build-tools _cross-tools _includes _libraries _depend \
        build32 distribute32 install32
TGTS+=  ${SUBDIR_TARGETS}

BITGTS= files includes
BITGTS:=${BITGTS} ${BITGTS:S/^/build/} ${BITGTS:S/^/install/}
TGTS+=  ${BITGTS}
...

Nessa variaves TGTS vemos os mesmos passos clean, cleandir, depend,etc..

Ou seja é mais fácil a segunda forma que já tem uma espécie de
"atalho" para a compilação do kernel.

>
>
> Thiago Gomes
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>



-- 
Giancarlo Rubio


Mais detalhes sobre a lista de discussão freebsd