Depuración de programas Go en GoClipse con código ensamblador
Al intentar depurar un programa Go en GoClipse, los usuarios pueden encontrar un problema donde el depurador recorre el código ensamblador en lugar del código Go. Esto ocurre a pesar de instalar gdb correctamente para la depuración.
Cuando se establece un punto de interrupción y el programa se ejecuta a través del depurador de Eclipse, ingresa archivos de código ensamblador como "rt0_darwin_amd64.s" y se enfoca en líneas como "MOVQ $_rt0_go (SB), AX." Este comportamiento puede dificultar la depuración.
Para solucionar este problema, verifique el contenido de la vista de depuración cuando se detenga el programa Go. Si muestra un seguimiento de la pila que comienza con "main() en rt0_darwin_amd64.s", esto indica que el depurador se ha detenido en una función "principal" de tiempo de ejecución interna escrita en C.
Este comportamiento está controlado por el primer opción en las opciones de configuración de inicio. Para resolverlo, configure la opción en "main.main" para detenerse en la función principal de Go real o simplemente desmarque la opción.
Alternativamente, si el depurador se detiene en la función "principal" del tiempo de ejecución interno, puede haga clic en "Ejecutar/Reanudar" (F8) para continuar la ejecución. Esto le permitirá recorrer el código Go y depurarlo como se esperaba.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3