trasplante gdb en tablero de brazo
sudo apt-get install libncurses5-dev
sudo apt-get install m4
sudo apt-get install flex
sudo apt-get install bison
Después de instalar la máquina virtual, instale el entorno básico de la herramienta.
sudo apt-get update
sudo apt-get install build-essential
cadena de herramientas de compilación cruzada arm: arm-none-linux-gnueabi, dirección de descarga http://www.veryarm.com/cross-tools, elija la versión de septiembre de 2012
Dirección de descarga de la fuente gdb: http://ftp.gnu.org/gnu/gdb/
Descargué gdb-7.4.1.tar.bz2 y lo descomprimí en el directorio de código:
./configure --host = arm-none-linux-gnueabi
Parece normal, empieza a hacer
Sin embargo, después de un tiempo, aparecerá
configure: ADVERTENCIA: no se encontró una biblioteca de maldiciones mejorada; deshabilitando la
comprobación de TUI para la biblioteca que contiene tgetent ... no
configuró: error: no se encontró la biblioteca termcap
Encontré muchos métodos en Internet, no funcionaron
Por ejemplo, para instalar la biblioteca ncurses: sudo apt-get install libncurses5-dev, instalado es inútil
Por ejemplo, descargue termcap-1.3.1.tar.gz y compílelo en el directorio / lib de la cadena de herramientas. Por ejemplo, /home/arm-2012.09/arm-none-linux-gnueabi/lib también es inútil, así que lo pensé cuidadosamente. Mensaje de error, en el proceso de configuración, primero debe usar la biblioteca ncurses, si no la encuentra, no continuará buscando la biblioteca termcap, por lo que
Descargue la compilación ncurses-5.5-tar.gz e instálela de la siguiente manera, este problema finalmente se resuelve.
Dirección de descarga: http://ftp.gnu.org/gnu/ncurses/
./configure --host = arm-none-linux-gnueabi --prefix = / home / arm-2012.09 / arm-none-linux-gnueabi
hacer
hacer instalar
En este momento, make gdb no cometerá el error anterior, pero las cosas no son tan simples y los problemas nuevos continuarán apareciendo más adelante.
En el archivo incluido de arm-linux-nat.c: 25: 0:
linux-nat.h: 79: 18: error: el campo 'siginfo' tiene un tipo incompleto
arm-linux-nat.c: En la función 'arm_linux_stopped_data_address':
arm -linux-nat.c: 1141: 23: error: desreferenciando el puntero al tipo incompleto
arm-linux-nat.c: 1144: 16: error: desreferenciando el puntero al tipo incompleto
arm-linux-nat.c: 1145: 20: error : desreferenciar el puntero al tipo incompleto
arm-linux-nat.c: 1157: 46: error: desreferenciar el puntero al tipo incompleto
Aquí debería ser que el código fuente no coincide con los archivos de encabezado del sistema Linux. Algunas personas sugirieron que este siginfo debería modificarse a siginfo_t. Sin embargo, creo que no hay necesidad de modificarlo. Descargué gdb-7.6.1.tar.gz directamente y lo compilé.
Compilar comando:
./configure --host = arm-none-linux-gnueabi
hacer
hacer instalar
Luego puede ver el archivo ejecutable gdb en el directorio gdb del código fuente:
dancy @ dancy: ~ / downloads / gdb-7.6.1 / gdb $ file gdb
gdb: ELF ejecutable LSB de 32 bits, ARM, EABI5 versión 1 (SYSV), vinculado dinámicamente (usa libs compartidas), para GNU / Linux 2.6. 16, sin pelar
sudo apt-get install libncurses5-dev
sudo apt-get install m4
sudo apt-get install flex
sudo apt-get install bison
Después de instalar la máquina virtual, instale el entorno básico de la herramienta.
sudo apt-get update
sudo apt-get install build-essential
cadena de herramientas de compilación cruzada arm: arm-none-linux-gnueabi, dirección de descarga http://www.veryarm.com/cross-tools, elija la versión de septiembre de 2012
Dirección de descarga de la fuente gdb: http://ftp.gnu.org/gnu/gdb/
Descargué gdb-7.4.1.tar.bz2 y lo descomprimí en el directorio de código:
./configure --host = arm-none-linux-gnueabi
Parece normal, empieza a hacer
Sin embargo, después de un tiempo, aparecerá
configure: ADVERTENCIA: no se encontró una biblioteca de maldiciones mejorada; deshabilitando la
comprobación de TUI para la biblioteca que contiene tgetent ... no
configuró: error: no se encontró la biblioteca termcap
Encontré muchos métodos en Internet, no funcionaron
Por ejemplo, para instalar la biblioteca ncurses: sudo apt-get install libncurses5-dev, instalado es inútil
Por ejemplo, descargue termcap-1.3.1.tar.gz y compílelo en el directorio / lib de la cadena de herramientas. Por ejemplo, /home/arm-2012.09/arm-none-linux-gnueabi/lib también es inútil, así que lo pensé cuidadosamente. Mensaje de error, en el proceso de configuración, primero debe usar la biblioteca ncurses, si no la encuentra, no continuará buscando la biblioteca termcap, por lo que
Descargue la compilación ncurses-5.5-tar.gz e instálela de la siguiente manera, este problema finalmente se resuelve.
Dirección de descarga: http://ftp.gnu.org/gnu/ncurses/
./configure --host = arm-none-linux-gnueabi --prefix = / home / arm-2012.09 / arm-none-linux-gnueabi
hacer
hacer instalar
En este momento, make gdb no cometerá el error anterior, pero las cosas no son tan simples y los problemas nuevos continuarán apareciendo más adelante.
En el archivo incluido de arm-linux-nat.c: 25: 0:
linux-nat.h: 79: 18: error: el campo 'siginfo' tiene un tipo incompleto
arm-linux-nat.c: En la función 'arm_linux_stopped_data_address':
arm -linux-nat.c: 1141: 23: error: desreferenciando el puntero al tipo incompleto
arm-linux-nat.c: 1144: 16: error: desreferenciando el puntero al tipo incompleto
arm-linux-nat.c: 1145: 20: error : desreferenciar el puntero al tipo incompleto
arm-linux-nat.c: 1157: 46: error: desreferenciar el puntero al tipo incompleto
Aquí debería ser que el código fuente no coincide con los archivos de encabezado del sistema Linux. Algunas personas sugirieron que este siginfo debería modificarse a siginfo_t. Sin embargo, creo que no hay necesidad de modificarlo. Descargué gdb-7.6.1.tar.gz directamente y lo compilé.
Compilar comando:
./configure --host = arm-none-linux-gnueabi
hacer
hacer instalar
Luego puede ver el archivo ejecutable gdb en el directorio gdb del código fuente:
dancy @ dancy: ~ / downloads / gdb-7.6.1 / gdb $ file gdb
gdb: ELF ejecutable LSB de 32 bits, ARM, EABI5 versión 1 (SYSV), vinculado dinámicamente (usa libs compartidas), para GNU / Linux 2.6. 16, sin pelar