es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Referencia indefinida a stdscr

Quiero compilar un código C en la última versión de Ubuntu. Cuando lo hago, obtengo el siguiente error:

gcc <nombreArchivo>.c
/usr/bin/ld: /tmp/ccY8CJ10.o: en la función `main':
sudoku.c:(.text+0xb8): referencia sin definir a `stdscr'
/usr/bin/ld: sudoku.c:(.text+0xc0): referencia sin definir a `wgetch'
collect2: error: ld devolvió el estado de salida 1

¿Tienes alguna idea de qué causa esto?
Sé que el problema es el encabezado en mi código, pero no sé cómo solucionarlo.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error indica que el enlazador (ld) no puede encontrar la definición de stdscr y wgetch referenciadas en el código. Estas funciones son proporcionadas por la biblioteca curses, la cual necesita ser enlazada al compilar.

    Para solucionar el problema, añade la opción -lncurses al comando gcc al compilar:

    gcc <nombrearchivo>.c -lncurses
    

    Esto le indicará al compilador que enlace la biblioteca ncurses, la cual proporciona las definiciones necesarias para stdscr y wgetch.

Comments are closed.