visual studio mac for compiler compilador best xcode eclipse debugging osx-mavericks

xcode - studio - Eclipse GDB MacOSX Mavericks



macos c++ (0)

He tenido problemas terribles para hacer una depuración de aplicaciones usando el proyecto Eclipse C / C ++ con XCode 5.0 y finalmente lo he logrado. Finalmente pude depurar con éxito mi aplicación y es por eso que decidí hacer este pequeño tutorial con la esperanza de ahorrarle tiempo a otros.

Al intentar depurar y la aplicación escrita en C / C ++ en Eclipse en el sistema operativo Mavericks aparece "Error gdb - versión".

Esto se debe a que Eclipse no puede encontrar la depuración de GDB en el nuevo Mac OSX porque Apple interrumpe el soporte de GDB en lugar del LLDB. Para comprobar si este es su caso, simplemente intente ejecutar desde Terminal gdb y se mostrará como archivo no encontrado.

El problema es que LLDB aún no está configurado para Eclipse (o al revés). Entonces, ¿cómo hacer que su Eclipse depure la aplicación nuevamente como en el sistema operativo anterior 10.8?

Primero obtenga y compile el GDB. Tienes dos opciones posibles:

  • Macports (Desafortunadamente, el lanzamiento de Mavericks se atascó en la creación de la biblioteca de getext)
  • Homebrew

Mi sugerencia es obtenerlo de Homebrew. Verifique en su sitio web el enlace de descarga e instale usando

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/hebrew/go)"

Déjalo instalar Después de instalar GDB correctamente, debe firmar un certificado para que Eclipse pueda usar GDB, de lo contrario, aparecerá el error:

No se puede encontrar el puerto de la tarea de Mach para el proceso id 28885: error (os / kern) (0x5). (Por favor, compruebe que gdb está codificado - vea taskgated (8))

Esto significa que Eclipse puede encontrar el GDB ahora pero no puede ejecutarlo debido al problema de los certificados de Apple.

Para firmar la aplicación GDB y hacer posible que Eclipse la ejecute siga la guía aquí:

https://sourceware.org/gdb/wiki/BuildingOnDarwin

que se puede resumir en:

  1. Inicie la aplicación Keychain Access (/ Aplicaciones / Utilidades / Keychain Access.app)
  2. Abrir menú / Acceso a llavero / Asistente de certificado / Crear un certificado (BARRA DE MENÚ SUPERIOR)

  3. Elija un nombre (gdb-cert en el ejemplo) 3.1 Establezca "Tipo de identidad" en "Raíz auto firmada" 3.2 Establezca "Tipo de certificado" en "Firma de código" 3.3 Compruebe la bandera "Permitir anular los valores predeterminados" 3.4 Haga clic varias veces en " Continúe "hasta que llegue a" Especificar una ubicación para la pantalla del certificado "y luego configure Keychain en" Sistema "3.5 Si no puede almacenar el certificado en el llavero" Sistema ", créelo en el llavero" iniciar sesión "y luego exporte eso. A continuación, puede importarlo en el llavero "Sistema". 3.6 Asegúrese de tener el "gdb-cert" en su "Sistema" (ventana superior izquierda)

  4. Seleccione "Obtener información" presionando dos veces en el certificado recién hecho (gdb-cert),

  5. Abra la opción "Trus" t, y configure "Firma de código para confiar siempre"
  6. Cerrar la aplicación de Acceso a Llaveros
  7. Reinicie la aplicación "taskgated" desde el monitor de actividad

Ahora necesita firmar el certificado haciendo desde la terminal

$ codesign -s gdb-cert ../path of GDB

Ejemplo:

$ codesign -s gdb-cert /usr/local/bin/gdb

Ya está todo listo ... listo para depurar su aplicación C / C ++ en Eclipse en MacOSX Mavericks

Asegúrate de tener todo configurado correctamente una vez más, revisa el menú Eclipse Ejecutar-> Configuración de depuración-> Depurador de la línea: Depurador GDB -> / usr / local / bin / gdb (o tu ruta local, compruébalo con "$ which gdb "para obtener la ruta correcta) GDB Command file-> .gdbinit

Apple dejó instalar GDB en los Mavericks pero les gusta que la gente aplaste sus cabezas en la pared antes de hacer un simple programa de Hallo World. Sin comentarios.

¡Diviértete y espero haberte ahorrado tiempo!