2011-10-16 25 views
4

我已经在我的Ubuntu安装libsdl 1.2 -dev但问题是,它不明白 #include<SDL.h>SDL.h:没有这样的文件或目录

它说:

SDL.h: No such file or directory 

但是,当我类型:

[email protected]:~$ g++ sepand.cpp -o sepand -lSDL 

该项目编译没有任何问题。 我该怎么做才能使Ubuntu了解SDL.h?

+0

'SDL.h'和'sdl.h'不是一回事 - 你的代码和错误信息不匹配,请更正。你的问题还不清楚 - 它在哪里工作,它在哪里?如果您引用的g ++命令有效,那究竟是什么问题? – Mat

+0

问题在于,它在SDL.h中不起作用,但它与SDL/SDL.h一起工作,问题是我无法更改代码,所以我必须使它与SDL.h一起工作。 – user997125

+1

然后在您的编译命令(在源文件名之前)添加'-I/usr/include/SDL'(或包含目录的任何位置)。 – Mat

回答

6

The correct way是将`sdl-config --cflags`添加到您的CXXFLAGS。 (您还应该添加`sdl-config --libs`到您的LIBS即使你似乎并不在你的情况下是必要的。)

从链接复述:使用命令sdl-config --cflags --libs的输出SDL 1.2或sdl2-config --cflags --libs为SDL2,例如:

gcc -o test test.c `sdl-config --cflags --libs` 
相关问题