2

我目前正在使用 SDL 开发应用程序。为了使用它,我已经在项目的设置中添加了库和头文件C/C++ Build -> Settings -> Tool Settings -> Libraries/Includes。但是,当我尝试构建一个测试程序时

#include <stdio.h>
#include <SDL/SDL.h>

int main(int argc, char *argv[])
{
    SDL_Init(SDL_INIT_EVERYTHING);
    SDL_Quit();

    return 0;
}

我在链接过程中收到这条漂亮的错误消息:

d:/programme/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../libmingw32.a(main.o): 在函数main': C:\MinGW\msys\1.0\src\mingwrt/../mingw/main.c:73: undefined reference toWinMain@16'

这很奇怪,因为目录 C:\MinGW 甚至根本不存在。

用于链接的命令是这个: gcc "-LD:\Programme\SDL\lib" -o test.exe test.o -lsdl

经过两个小时试图让图书馆链接正常工作后,我很困惑,不知道我做错了什么。帮助将不胜感激。

4

1 回答 1

1

看起来您正在构建一个Windows GUI需要WinMain, 而您的代码仅提供main用于控制台应用程序的功能的应用程序。

因此,如果这应该是一个控制台应用程序,您必须相应地调整您的链接器设置,或者您必须声明一个WinMain.

于 2013-12-17T12:19:45.920 回答