c-对`__time32`ncurses的未定义引用



背景:我正在学习如何使用ncurses来实现一个简单的roguelike游戏。

一开始,我一直在无耻地复制教程网站上的代码,以便正确设置IDE,但在所有示例中,我都遇到了相同的错误:

lib\libncursesw.a(lib_twait.o):lib_twait.c||对`__time32'的未定义引用

其他错误也在libncursesw.a(twait.c和迭代器.c)中

我尝试了什么:链接器上的-lncurses,-libcurses--lcurses开关(带有gcc的MinGW)无效(错误表明他们找不到-lxxxx)

我有包含在库中的libncursesw.a(在代码::块中)

如果你想知道我使用的代码是什么(或者它是否有帮助),这里是:

#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;
}

任何帮助都将不胜感激——这类事情总是我唯一无法跨越的障碍。。。

编辑

这些是编译器调用:

对于主。o:

mingw32-gcc.exe -Wall -O2 -IC:UsersUserCBProjectsrogueinclude -c C:UsersUserCBProjectsroguemain.c -o objReleasemain.o

对于可执行文件:

mingw32-g++.exe -o binReleaserogue.exe $(OBJS_RELEASE) -s liblibncursesw.a liblibncursesw.a

首先,您应该使用gcc而不是g++来生成exe文件。

__time32是一个Windows系统功能。Ming通常会找到必要的库,但有时准确的链接命令很重要。看见http://www.digipedia.pl/usenet/thread/12692/4948/对于类似的情况。

最新更新