在 mac 上使用 SDL1.2 编译

Compiling with SDL1.2 on mac

我正在尝试编译一些使用 SDL 的代码。

我的代码相当简单,我已经按照 SDL 中的步骤准备将 SDL 添加到 /Library/Frameworks 下的 mac。

然而,当我尝试编译时,由于某种原因找不到 header。

这是我的代码(只是围绕 SDL header 包含的部分):

#include <SDL.h>

这就是我编译代码的方式:

g++ [mycppfiles] -o a.out -framework GLUT -framework OpenGL -framework SDL -std=c++98 -L /Library/Frameworks/SDL.framework/Headers/

你知道为什么找不到SDL header吗?

终于成功了。显然不应该添加 -framework SDL 而只是告诉编译器在正确的目录中查找 SDL.h

这里是我用来编译的命令行:

g++ [myfiles.cpp] -o a.out -framework GLUT -framework OpenGL -std=c++98 -I/Library/Frameworks/SDL.framework/Headers/ `sdl-config --cflags --libs` 

如果你不添加这个位 sdl-config --cflags --libs 它无法找到 SDL 中使用的函数的定义。