c-使用gcc -incurses标志编译ncurses代码似乎不起作用

我正在使用ncurses编写基于终端的俄罗斯方块游戏.我已经将所有ncurses代码隔离到一个名为tetrisUI.c的文件中,该文件在main.c源文件中包括一个头文件.当我编译所有的ncurses函数时,都会引发编译器错误.我已经在源文件中包含了ncurses.h,并且在gcc中使用了-Incurses标志.我正在从具有以下内容的makefile进行编译:

Tetris : tetris.o main.o tetrisUI.o
    gcc tetris.o main.o tetrisUI.o -o Tetris

tetrisUI.o : tetrisUI.c
    gcc -std=c99 -c tetrisUI.c -lncurses

tetris.o : tetris.c tetris.h
    gcc -std=c99 -c tetris.c

main.o : main.c tetris.h tetrisUI.h
    gcc -std=c99 -c main.c

我能够使用ncurses编译一些简短的测试程序,就很好了.这是我第一次尝试使用ncurses,也是我的第一个重要的c程序(我在学校里做了一点c语言).我有一个预感,我的问题与我的makefile有关,但是我也不喜欢使用它们.

解决方法:

在链接阶段而不是在编译阶段使用-incurses:

gcc tetris.o main.o tetrisUI.o -o Tetris -lncurses
上一篇:使用Python Urwid / NCurses在终端应用程序内创建水平和垂直滚动表


下一篇:如何在不清除背景的情况下弹出ncurses小部件?