Linux의 Curses가 다음 오류를 제공하는 이유는 무엇입니까?
-
19-09-2019 - |
문제
키 프레스를 캡처하기 위해 Getch ()를 얻으려고합니다.
#include <curses.h>
...
...
WINDOW *w;
char f;
w = initscr();
timeout(3000);
f = getch();
endwin();
다음 오류를 제공합니다.
undefined reference to `wgetch'
undefined reference to `stdscr'
해결책
링크 오류입니다. Curses 라이브러리에 올바르게 연결하고 있습니까?
C에서 라이브러리 사용과 관련된 두 단계가 있습니다.
- 너
#include
소스 파일의 관련 헤더 파일. 이것은 귀하의 코드가 라이브러리 기능의 서명이 무엇인지 알고 있습니다. 그래서 당신은 이것을 올바르게하고 있습니다. - 코드를 컴파일 할 때는 링커에 관련 라이브러리 링크를 알려 주므로 해당 함수의 정의를 찾을 수 있습니다. 이것이 당신이하지 않는 일입니다. GCC를 사용하고 있다고 가정 한 다음 추가합니다
-lncurses
컴파일 라인에이를 수행해야합니다. 여기에 있습니다 연결에 대한 설명.
제휴하지 않습니다 StackOverflow