背景:我正在学习如何使用ncurses来实现一个简单的流氓游戏。
首先,我不知羞耻地从教程网站上复制代码,以便正确设置IDE,但在所有示例中,我都遇到了相同的错误:
lib\libncursesw.a(lib_twait.o):lib_twait.c | |对`__time32
的未定义引用
其他错误也出现在libncursesw.a(twait.c和iterator.c)中
我试过的东西是,-lncurses,-llibcurses--lcurses在链接器上切换(与gcc一起使用)没有用(错误说他们找不到-lxxx)
我把libncursesw.a包含在libs中(在code::blocks中)
如果您想知道im使用的代码是什么(或者它是否有帮助),这里是:
#include <stdlib.h>
#include <stdio.h>
#include <ncurses.h>
int main()
{
initscr(); /* Start curses mode */
printw("Hello World !!!"); /* Print Hello World*/
refresh(); /* Print it on to the real screen */
getch(); /* Wait for user input */
endwin(); /* End curses mode */
return 0;
}
任何帮助都是非常感激的-这些东西总是我无法跨越的唯一障碍。。。
编辑
以下是编译器调用:
对于main.o:
mingw32-gcc.exe -Wall -O2 -IC:\Users\User\CBProjects\rogue\include -c C:\Users\User\CBProjects\rogue\main.c -o obj\Release\main.o
对于可执行文件:
mingw32-g++.exe -o bin\Release\rogue.exe $(OBJS_RELEASE) -s lib\libncursesw.a lib\libncursesw.a
最佳答案
首先,应该使用gcc而不是g++来生成exe文件。
__time32是一个Windows系统函数。Ming通常会找到必要的库,但有时准确的link命令很重要。参见http://www.digipedia.pl/usenet/thread/12692/4948/了解类似情况。