tag mp3tag kid3 editar easytag linux arm assembly

mp3tag - mp3 tag linux



Herramientas necesarias para aprender ARM en la plataforma Linux x86 (3)

Básicamente, necesitas dos cosas: una cadena de herramientas y un emulador.

La cadena de herramientas consiste en todo lo que necesita para crear aplicaciones para la arquitectura ARM y ejecutarla en el destino (en su caso, un emulador). Un buen lugar para comenzar sería buildroot o ELDK . Estos le proporcionarán una solución completa de Linux. Si solo desea poder compilar, sin trabajar con una instalación de Linux (y los rootfs que lo acompañan), puede usar solo un compilador cruzado. Una gratuita es CodeSourcery , pero también hay otras (la mayoría basadas en GCC).

El emulador es el lugar donde ejecutará el código, que se comportará como una CPU ARM. Un buen lugar para comenzar es QEMU .

Los proyectos cruzados tienen una curva de aprendizaje bastante empinada y requieren mucha búsqueda en línea para hacer las cosas. Rara vez hay guías detalladas paso a paso para todo el proceso, pero hay muchas guías para diversas partes del trabajo.

Tengo un x86, linux box. mientras leía información variada sobre ARM, me puse curioso y ahora estoy pensando en pasar algún tiempo aprendiendo esta arquitectura. Mi objetivo a partir de ahora es poder escribir programas de ensamblaje triviales para ARM, usar algún ensamblador para generar el código objetivo para ARM y poder ejecutar ese programa en una máquina ARM emulada. Para empezar, he descargado el manual de referencia de arquitectura ARM. Según la información aquí , Keil no es compatible con Linux, por lo tanto, ayúdenme con las herramientas (ensamblador, emulador) que necesitaría.


Existen compiladores cruzados de GCC disponibles para objetivos ARM; Code Sourcery es bastante común si quieres uno preconstruido.

En cuanto a un entorno de emulación, qemu hace un buen trabajo al emular el ARM. El emulador de Android de Google se basa en eqmu (y su "NDK" es otra fuente de un compilador cruzado ARM preconstruido).


codesourcery es más o menos la herramienta de brazo gcc. puedes construir tu propio gcc por supuesto o hay otros (devkitarm, yagarto, emdebian, etc.), pero codesourcery es de vanguardia y simplemente funciona. llvm es también un buen compilador, no es necesario realizar una compilación cruzada, admite múltiples objetivos con la única instalación. Para ambos utilizo binutils (parte de codesourcery, construyo uno para usar con llvm). cada vez es más difícil obtener una compilación con newlib, si mal no recuerdo estas instrucciones funcionan http://www.cowlark.com/2009-07-04-building-gcc/ . Newlib es súper fácil de portar a cualquier objetivo.

Tengo un emulador de pulgar, el conjunto de instrucciones de brazo reducido. búsqueda de thumbulator en github. Ofrece una visibilidad mucho mayor que qemu si eso es lo que buscas, pero limitado a una tabla de cortex-m3 como excepción y arranque. Para construir un brazo basado en Linux y correr que definitivamente va con qemu. gdb tiene incorporado el brazo (emulador de ARM). Todo depende de lo que estás buscando.