2009-10-03 10 views

Antwort

16

, dass ein Verknüpfungsfehler ist. Verbindest du die Curses-Bibliothek korrekt?

Es gibt zwei Schritte, die in eine Bibliothek in C unter Verwendung von

  1. Sie #include die entsprechenden Header-Dateien aus der Quelldatei. Dies ist der Fall, damit Ihr Code weiß, welche Signaturen der Bibliotheksfunktionen sind. Also machst du das richtig.
  2. Wenn Sie Ihren Code kompilieren, müssen Sie dem Linker mitteilen, dass er mit den relevanten Bibliotheken verlinkt, damit er die Definition dieser Funktionen finden kann. Dies ist, was Sie nicht tun. Angenommen, Sie verwenden gcc, dann fügen Sie -lncurses der Compile-Zeile sollte es tun. Hier ist ein explanation of linking.
+1

ja i curses.h enthalten sind, und ncurses.h auch –

+8

Link zu Flüche -lncurses Option –

+0

FWIW Verwendung im November 2017 ist es besser 'pkg-config' zu verwenden, finden Sie [diese] (https://stackoverflow.com/a/47060434/841108) beantworten Sie eine sehr ähnliche Frage. –