我正在尝试使用SDL2创建一个窗口。编译时没有错误,但是运行时也没有出现任何窗口。
这是我的代码(为了易读性,省略了错误检查)。
#include <stdlib.h>
#include <SDL2/SDL.h>
int main(void)
{
SDL_Window *win = NULL;
SDL_Renderer *ren = NULL;
SDL_Init(SDL_INIT_EVERYTHING);
SDL_CreateWindowAndRenderer(320, 640, 0, &win, &ren);
SDL_SetRenderDrawColor(ren, 0, 0, 0, 255);
SDL_RenderClear(ren);
SDL_RenderPresent(ren);
SDL_Delay(3000);
SDL_DestroyRenderer(ren);
SDL_DestroyWindow(win);
SDL_Quit();
return (0);
}
我还尝试过从维基上这个代码示例,但问题依旧。
编译
clang -F /Library/Frameworks -framework SDL2 main.c
我在MacOS Big Sur上工作。我从官网下载的.dmg文件(运行时二进制文件/Mac OS X)中安装了SDL2,并将其放置在/ Library / Frameworks
文件夹中。
这是否是兼容性问题?我该如何解决?
编辑
我还尝试按照这个教程安装SDL,但问题依旧。
SDL_PollEvent
和事件循环。无论如何您都需要它来处理输入,而且我听说在某些平台上否则窗口可能不会显示出来。 - HolyBlackCat