Eu segui este guia para emular o RPI no OSX via VirtualBox e ele funciona. Agora eu gostaria de simplificar um pouco as coisas, já que esta solução envolve a execução do debian em uma máquina virtual apenas para executar o qemu em cima do.
Pesquisei no Google guias sobre como configurar o qemu diretamente no osx e encontrei o guia de Matthew Yee-King . Eu segui as instruções e tudo parece bem até a última parte. Quando inicio qemu-system-arm
, vejo a janela QEMU aparecer, mas o aplicativo parece congelar. Depois de um tempo, ele aparece como Não está respondendo no Gerenciador de atividades.
O que estou perdendo ? Como emulo o RPI no OSX com o QEMU?
Respostas:
Para configurar um ambiente emulado do software Raspberry Pi no OSX, será necessário:
Supondo que um já tenha as mais recentes ferramentas de linha de comando e Xcode da Apple Developer e homebrew instaladas, instale as dependências:
Pegue e compile a ferramenta:
A Compilação do Kernel RPi
Pegue o arquivo de configuração e configure o kernel:
Salve a configuração e vamos construir o kernel posteriormente. Observe que a compilação deve falhar e reclamar de uma inclusão nos scripts / mod / mk_elfconfig. Se isso acontecer, é necessário criar o arquivo:
Edite-o e escreva o seguinte:
e siga o processo de construção:
O arquivo de imagem é criado e localizado como
arch/arm/boot/zImage
.O Emulador
Devido a um erro de uma tela branca pendurada no QEMU, se compilado com o llvm, é necessário instalar o pacote apple-gcc42 no repositório dupes do homebrew.
E então compile e instale o qemu como:
Agora resta tudo o que precisamos para iniciar a distribuição RPi, então vamos começar como:
Conforme referido no site da mluis .
fonte
#include <libelf/libelf.h> #define R_386_NONE 0 #define R_386_32 1 #define R_386_PC32 2 #define R_ARM_NONE 0 #define R_ARM_PC24 1 #define R_ARM_ABS32 2 #define R_MIPS_NONE 0 #define R_MIPS_16 1 #define R_MIPS_32 2 #define R_MIPS_REL32 3 #define R_MIPS_26 4 #define R_MIPS_HI16 5 #define R_MIPS_LO16 6 #define R_IA64_IMM64 7 #define R_PPC_ADDR32 8 #define R_PPC64_ADDR64 9 #define R_SH_DIR32 10 #define R_SPARC_64 11 #define R_X86_64_64 12 #define R_390_64 13 #define R_MIPS_64 14
make install-cross
antes de encontrar problemas. Além disso, aprendi com o Homebrewapple-gcc42
"não compila ou funciona conforme o esperado nas versões macOS mais recentes que o Mavericks devido a uma incompatibilidade de upstream".Existe uma opção paga pronta para executar que é executada sobre o QEMU:
https://snorfi.us/raspiemu/
Se você não quiser pagar, também pode fazer o download da versão alfa em
https://sourceforge.net/projects/raspberrypiemulator/
fonte
Parece que a etapa 'configurar o kernel' precisa um pouco mais. Observe que
deve ser um dos arquivos desse diretório, como
arm-none-eabi-ar
ouarm-none-eabi-as
etc ...fonte