Installer les outils de développement ARM sur FreeBSD
Il vous est peut être arrivé de devoir coder et tester des programmes en assembleur ARM (peut être même simplement par curiosité qui sait ?) sur des machine x86. Pour y arriver j'ai du installer arm-elf-as (l'assembleur arm de GNU), arm-elf-ld (edition des liens) et le debugger arm-elf-gdb le tout sur FreeBSD. La démarche n'étant pas triviale voici comment installer tous ces softs :
make -C /usr/ports/devel/cross-binutils TGTARCH=arm TGTABI=elf install clean make -C /usr/ports/devel/cross-gdb TGTARCH=arm TGTABI=elf install clean
Si tout se passe bien et si le temps le permet vous êtes prêts à compiler et tester votre programme ASM ARM :
# Assemblage pour un cpu arm7tdmi par exemple. Avec les options de debug arm-elf-as -mcpu=arm7tdmi -gstabs main.s -o main.o # Edition des liens. Avec les options qui vont bien jetez un coup d'oeil à ld(1) en cas de doute arm-elf-ld -Ttext=0x2000 -nostartfiles -o main main.o # Lancement dans gdb arm-elf-gdb ./main
Et amusez vous avec gdb :
GNU gdb 6.8 Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=i386-portbld-freebsd7.2 --target=arm-elf"... (gdb) target sim Connected to the simulator. (gdb) load Loading section .text, size 0x34 vma 0x2000 Start address 0x2000 Transfer rate: 416 bits in <1 sec. (gdb) run Starting program: /usr/home/phil/src/asm/main Program exited normally. (gdb)
Vite fait un petit aide mémoire gdb (je suis moi même un lecteur de mon blog ça m'aide en cas de doute) :
b étiquette|adresse, créer un breakpoint d, (delete) supprimer tous les breakpoints r, (run) lancer le programme s, (step) avancer d'une instruction i r, (info register) visualiser les registres x étiquette|adresse, visualiser la mémoire quit, quitter
N'oubliez pas qu'on peut lancer des make depuis gdb et recharger le programme avec load.
Previous postUn système de ramasse miette en C |
Next postSpamd ourgl |
Comments: 5
Slt, tu saurais nous dire comment comment assembler sur Ubuntu? Merci d'avance
J'aimerais aussi pouvoir héberger mon propre site , pouvez vous me dire quel débit avoir pour que l'accès au site soit aussi rapide.
Merci d'avance
Hmm sur Ubuntu je ne sais pas du tout. À priori ils ne sont pas dans les dépôts officiels et tu peux espérer trouver un dépôt de developpement ARM. Sinon go http://www.gnuarm.com télécharger les binutils et insight (gdb graphique).
Pour l'hébergement ce qui est important c'est le débit d'upload. Moi j'ai l'offre basique de Free, donc un upload qui fait des pointes à 100Ko/s ce qui n'est rien (comparé a un serveur hébergé en salle machine) mais c'est suffisant pour mon usage (un dizaine de sites + mail + git + dns) suffit de pas mettre d'images trop volumineuses dans les pages. Pour te donner une idée en septembre 2009 (là ou j'ai eu le plus de charge web dans l'année), le serveur servait une moyenne de 2000 pages par jours.
Le nom du domaine tu as été obligé de l'acheter?
Ben oui j'ai acheté philpep.org sur http://www.gandi.net, mais c'est moi qui contrôle le DNS (c'est à dire le serveur qui associe philpep.org ou un sous domaine à une ip).
Après tu peux aussi faire appel à des services style http://www.dyndns.com/ si tu veux pas payer ta 10 aine d'euros annuels. Mais là tu est un peu moins indépendant (et tu peux faire moins de choses).


5