Configurar a Crosstool
1. Fazer o download da crosstool-0.43 ou então aproveitar de alguém que ja a tem
$ wget http://www.kegel.com/crosstool/crosstool-0.43.tar.gz
2. Descompactar o arquivo da crosstool e depois entrar no diretório
$ tar zxvf crosstool-0.43.tar.gz
$ cd crosstool-0.43
3. Editar o arquivo demo-arm.sh incluindo a seguinte linha:
eval `cat arm.dat gcc-3.3.4-glibc-2.3.2.dat` sh all.sh --notest
Nesse arquivo sao setadas algumas variaveis de ambiente. Essas variaveis indicam onde os arquivos usados na compilacao da crosstool devem estar. Certifique-se que eles estao onde devem.
TARBALLS_DIR=$HOME/downloads # e aqui onde devem ficar os arquivos de download
RESULT_TOP=/opt/crosstool # aqui sera instalada a crosstoll
Crie o diretorio /opt/crosstool e faca com que ele possa ser escrito por voce:
$ su
# mkdir /opt/crosstool
# chown $USER /opt/crosstool
# exit
4. Tenha certeza que a variavel LD_LIBRARY_PATH nao esteja setada
$ export LD_LIBRARY_PATH=
5. Verifique se o bison esta instalado
$ which bison
6. Edite o arquivo arm.dat
Altere a variavel TARGET=arm-unknown-linux-gnu a sua escolha, pois sera usado quando formos compilar usando a variavel CROSS_COMPILE em Makefile. Sugestao: TARGET=arm-linux
7. Cheque a versao do gcc que voce possui em seu computador
$ gcc --version
Caso nao seja uma versao da serie 3 do gcc sera necessario fazer um downgrade para essa versao. No DVD do Centos-5.0 existe o arquivo que precisamos.
compat-gcc-34-3.4.6-4.i386.rpm
Instale essa versao do gcc.
# rpm -ivh compat-gcc-34-3.4.6-4.i386.rpm
Agora fazendo o downgrade:
$ su
# cd /usr/bin
# mv gcc gcc41 //caso nao exista outra versao pule esta linha
# ln -s gcc34 gcc
# exit
$ gcc --version
8. Agora execute o arquivo demo-arm.sh
$ ./demo-arm.sh
Vai demorar um bom tempo para compilar tudo entao procure fazer outra coisa. No computador que utilizei demorou 1 hr e 30 min
Se der um erro por causa de uma variavel PATH_MAX nao se preocupe, a sua crosstool esta funcionando, so nao tem o modo debugger.
Depois de realizada a compilacao da sua crosstool faca o upgrade do gcc ao normal:
$ su
# cd /usr/bin
# rm gcc
# mv gcc41 gcc
# exit
$ gcc --version
Compilacao do Kernel e dos Modulos
9. Fazer o download da modutils ou então aproveitar de alguém que ja a tem
$ wget http://www.kernel.org/pub/linux/utils/kernel/modutils/v2.4/modutils-2.4.26.tar.bz2
10. Descompactar a modutils
$ tar jxvf modutils-2.4.26.tar.bz2
11. Configurar a ferramenta
$ mkdir modutils-build
$ cd modutils-build; ../modutils-2.4.26/configure --prefix=/home/dwh/ts7300/modutils-install --target=arm-linux
O target e o nome que voce definiu no passo 6
12. Adicionar a crosstool a variavel PATH
$ export PATH=/opt/crosstool/gcc-3.3.4-glibc-2.3.2/arm-linux/bin:$PATH
Aconselho a adicionar essa linha em seu .bashrc
13. Compilar a ferramenta
Primeiro deve se criar o diretorio /home/dwh e fazer com que voce possa escrever nele, pois ele e usado nos scripts.
$ su
# mkdir /home/dwh
# chown $USER /home/dwh
# exit
Agora sim podemos compilar a ferramenta
$ make
$ make install
14. Adicionar a nova ferramenta ao PATH
$ export PATH=/home/dwh/ts7300/modutils-install/sbin:/opt/crosstool/gcc-3.3.4-glibc-2.3.2/arm-linux/bin:$PATH
Aconselho que faca a substituicao da linha incluida no passo 12 por essa em seu .bashrc
15. Fazer o download do kernel ou então aproveitar de alguém que ja a tem. A fonte desse kernel se encontra em Technologic Systems
tskernel-2.4.26-ts11-src.tar.gz
16. Descompactar o kernel
$ tar -zxvf tskernel-2.4.26-ts11-src.tar.gz
17. Dentro do diretorio do kernel descompactado edite o Makefile. Procure por:
CROSS_COMPILE=arm-unknown-linux-gnu- e mude para a sua crosstool
EX.: CROSS_COMPILE=arm-linux-
E em DEPMOD coloque:
DEPMOD = /home/dwh/ts7300/modutils-install/sbin/depmod
18. Preparando o kernel para compilacao
$ make ts7300_config
$ make oldconfig
19. Compilando o kernel
$ make dep
$ make vmlinux
Esse passo vai durar uns 5 minutos e criara a imagem do kernel em linux24/vmlinux
20. Agora Compilamos os modulos para o kernel
$ make modules
$ make modules_install INSTALL_MOD_PATH=/home/dwh/ts7300/linux24-modules
E os modulos serao instalados em $INSTALL_MOD_PATH/lib/modules/2.4.26-ts11
Pronto, agora seu ambiente de Cross-compilacao para a plataforma TS-7400 esta pronto.
Tutorial feito por Thiago Brito.
Referencias: Technologic Systems TS-7300 ARM+FPGA SBC Analysis
domingo, 23 de novembro de 2008
Cofigurando o ambiente de Desenvolvimento para a plataforma TS-7400
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário