【发布时间】:2015-12-06 00:22:37
【问题描述】:
我似乎无法编译这个程序。我班上有其他人编译这段代码没有问题。我正在使用相同的命令来尝试编译程序并将框架安装在与它们相同的目录中。 /图书馆/框架。我还安装了 eclipse 并按照 zamma.co.uk 教程设置 sdl2,但这也不起作用。这是我在编译时正在运行的命令
g++ -std=c++11 -o Gravity main.cpp Game.cpp Particle.cpp Point.cpp -I/Library/Frameworks/SDL2.framework/Headers -framework SDL2 -framework Cocoa
注意:我都试过了
#include <SDL.h>
和
#include <SDL2/SDL.h>
两者都不起作用
【问题讨论】:
-
当“都不工作”时,您从
g++得到什么错误输出? -
对于
#include <SDL2/SDL.h>,我得到fatal error: 'SDL2/SDL.h' file not found,对于#include <SDL.h>,我得到ld:找不到框架SDL2 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)make: *** [全部] 错误 1 @DrewMacInnis -
find /Library/Frameworks/SDL2.framework -name "SDL.h"找到那个头文件了吗?它是在 SDL2 目录下还是其他地方? -
当我运行该命令时,我得到了这个
/Library/Frameworks/SDL2.framework/Versions/A/Headers/SDL.h@DrewMacInnis -
使用
#include <SDL2/SDL.h>应该可以。请参阅this 教程。但是我认为您不需要-I选项;使用-framework会为您做到这一点。