gpt4 book ai didi

c++ - 使用 g++ 编译 SDL 的问题

转载 作者:太空宇宙 更新时间:2023-11-04 13:58:32 25 4
gpt4 key购买 nike

当我尝试编译文件时

#include "SDL2\SDL.h"

int main( int argc, char* argv[] )
{
//Start SDL
SDL_Init( SDL_INIT_EVERYTHING );

//Quit SDL
SDL_Quit();

return 0;
}

--来自 SDL wiki 的示例--在命令行上使用

g++ -o SDL_Test.exe SDL_Test.cpp -lmingw32 -lSDLmain -lSDL

我收到一条错误消息,提示我的计算机找不到 -lSDLmain 和 -lSDL。没有图书馆的东西,它就很难解释这些功能。

我认为问题与 -l 相关,但我不知道它们的作用....

我的电脑是 64 位的,如果有区别的话。我将 x84_64-mingw32 bin、include 和 lib 复制到 C:\MinGW 版本中。

我主要只是想要一个明确的解决方案来解决我的问题,但如果你能尝试解释 -l 事情和其他 - 事情,那就太棒了。

-::- greatwolf 在聊天中回答:原来我使用的是 32 位 MinGW 和 64 位 SDL 文件;我只需要用 32 位版本替换 64 位文件。另外,我必须将编译器指向我的 SDL2.dll 文件。结束编译命令是 g++ -o SDL_Test.exe SDL_Test.cpp -LC:\MinGW\lib -lmingw32 -lSDL2main C:\MinGW\bin\SDL2.dll

最佳答案

您必须确保使用 -L 编译器标志为库指定适当的搜索路径。否则它将不知道去哪里寻找链接。

关于c++ - 使用 g++ 编译 SDL 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20276595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com