Difference between revisions of "Arm-linux-gnueabi-gcc un qemu-arm"

From DiLab
Jump to: navigation, search
Line 17: Line 17:


Parametrs -L vajadzīgs, lai atrastu arm platformai piederīgās bibliotēkas
Parametrs -L vajadzīgs, lai atrastu arm platformai piederīgās bibliotēkas


==== Versijas ====

Ņemiet vērā, ka arm-linux-gnueabi-gcc un qemu-arm attīstās, un dažādas versijas spēj izķert vai ignorē dažādas kļūmes. Tāpēc, ja jūsu darbs iet "bez kļūdām" uz LU DF asm1 servera, tas nenozīmē ka visas kļūmes ir izķertas. Parasti jaunākas versijas spēj brīdināt par vairāk kļūdām.

Šobrīd uz ''asm1'' servera versijas ir šādas:
* arm-linux-gnueabi-gcc: gcc version 4.3.2 (Debian 4.3.2-1.1)
* qemu-arm: 0.10.0

Bet, piemēram, Ubuntu 12.04 repozitorijās versijas ir šādas:
* arm-linux-gnueabi-gcc: gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
* qemu-arm: 1.0.50 (Debian 1.0.50-2012.03-0ubuntu2.1)

Revision as of 15:28, 22 May 2013

Iespējams, jūs vēlaties kompilēt un testēt arm platformas programmas Ubuntu vidē. Tad nepieciešams uzstādīt gcc un qemu priekš arm platformas.

Uzstādam arm-linux-gnueabi-gcc un qemu-arm

sudo apt-get install gcc-arm-linux-gnueabi qemu qemu-kvm-extras linux-libc-dev-armel-cross

Tagad varam kompilēt programmu myprog.c arm platformai, piemēram, šādi.

arm-linux-gnueabi-gcc -g -mcpu=xscale -O0 -Wall -o myprog.o -c myprog.c
arm-linux-gnueabi-gcc  -o myprog myprog.o


Tagad varam darbināt arm programmu, piemēram, myprog ar qemu-arm

qemu-arm -L /usr/arm-linux-gnueabi myprog

Parametrs -L vajadzīgs, lai atrastu arm platformai piederīgās bibliotēkas


Versijas

Ņemiet vērā, ka arm-linux-gnueabi-gcc un qemu-arm attīstās, un dažādas versijas spēj izķert vai ignorē dažādas kļūmes. Tāpēc, ja jūsu darbs iet "bez kļūdām" uz LU DF asm1 servera, tas nenozīmē ka visas kļūmes ir izķertas. Parasti jaunākas versijas spēj brīdināt par vairāk kļūdām.

Šobrīd uz asm1 servera versijas ir šādas:

  • arm-linux-gnueabi-gcc: gcc version 4.3.2 (Debian 4.3.2-1.1)
  • qemu-arm: 0.10.0

Bet, piemēram, Ubuntu 12.04 repozitorijās versijas ir šādas:

  • arm-linux-gnueabi-gcc: gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  • qemu-arm: 1.0.50 (Debian 1.0.50-2012.03-0ubuntu2.1)