2016-07-12 20 views
1

Ich versuche Linux auf qemu laufen, vor allem die vielseitige Version.Wie wird Linux auf einem QEMU ARM Versatile-Computer ausgeführt?

Ich habe qemu und linux von github heruntergeladen. (qemu: https://github.com/qemu/qemu.git, linux: https://github.com/torvalds/linux.git)

Ich denke, diese beiden repositorys das Hauptprojekt von ihnen sind.

Wie auch immer, ich kompilierte Linux mit 2 Schritten.

  1. ARCH = Arm machen versatile_defconfig
  2. make all ARCH = Arm CROSS_COMPILE = Arm-none-eabi-

auch kompilierte qemu mit 3 Stufen.

  1. configure
  2. machen
  3. sudo

make install Und ich lief es mit diesem Befehl:

../qemu/arm-softmmu/qemu-system-arm -M versatilepb -m 128M -kernel ./arch/arm/boot/zImage 

und ein Fenster mit nur einem schwarzen Bildschirm tauchte . Was soll ich danach machen?

+0

Ich würde diese Frage auf [Unix und Linux] (http://unix.stackexchange.com/questions/255408/running-chown-in-bash-script-produces-errors) stellen, da es nicht wirklich hat alles, was mit der Programmierung oder der Programmierung zu tun hat. –

+1

Wow, danke. Ich wusste nichts über Unix und Linux, bevor du es mir gesagt hast. Ich denke, es ist besser, stattdessen dort zu fragen. –

+0

Ja, ich werde später eine richtige Antwort hinterlassen. Entschuldigung für meinen Titel –

Antwort

0

Ich habe qemu und linux von github heruntergeladen. (qemu: https://github.com/qemu/qemu.git, linux: https://github.com/torvalds/linux.git)

Ich denke, diese beiden repositorys das Hauptprojekt von ihnen sind.

Wie auch immer, ich kompilierte Linux mit 2 Schritten.

  1. ARCH = Arm machen versatile_defconfig
  2. make all ARCH = Arm CROSS_COMPILE = Arm-none-eabi-

auch kompilierte qemu mit 3 Stufen.

  1. configure
  2. sudo make install machen

das Root-Dateisystem zu mounten, ich heruntergeladen Busybox. (Ich bin mir nicht sicher, aber diese busybox ist das meist verwendete Dateisystem, um einfache Umgebung zu erstellen)

Ich habe busybox heruntergeladen und ich folgte ein paar Schritte.

  1. wget http://www.busybox.net/downloads/busybox-1.24.1.tar.bz2
  2. tar -xvf Busybox-1.24.1.tar.bz2
  3. cd Busybox-1.24.1/
  4. make defconfig
  5. make menuconfig (um binäre als statisch nicht geteilt)
  6. -j8
  7. make
  8. cd _install
  9. Fund installieren machen. | cpio -o --format = newc> ../rootfs.img
  10. cd ..
  11. gzip -c rootfs.img> rootfs.img.gz

Also, meine letzte Befehl ist

../qemu/arm-softmmu/qemu-system-arm -M versatilepb -kernel ./arch/arm/boot/zImage -nographic -dtb arch/arm/boot/dts/versatile-pb.dtb -initrd ../rootfs.img.gz -append "root=/dev/ram0 initrd=/bin/sh" 

ich lief linux auf qemu besonders vielseitig Version

hier ist mein aktueller Status der Datei mit dem Befehl 'ls'

den oberen Befehl, die Linux, Qemu und Dateisystem-Bilder So führen sollte wie folgt (es ist für meine Situation nur mit Ausnahme von anderen Projekten wie FreeRTOS) befinden

enter image description here

0

Buildroot

git clone https://github.com/buildroot/buildroot 
cd buildroot 
git checkout 2017.02 
make qemu_arm_versatile_defconfig 
make BR2_JLEVEL="$(($(nproc) - 2))" 
# From: https://github.com/buildroot/buildroot/blob/master/board/qemu/arm-versatile/readme.txt 
qemu-system-arm -M versatilepb -kernel output/images/zImage -append "console=ttyAMA0,115200" -serial stdio -net user -net nic,model=smc91c111 

Willkommen bei der Automatisierung Nirvana.