所以,我正在使用Twinklebear关于为MinGW设置SDL2的教程(网站在这里---> http://www.willusher.io/sdl2%20tutorials/2013/08/15/lesson-0-mingw/)。现在,我使用CodeLite 5.4作为我的IDE,我真的不知道如何调整我的IDE,以便它生成正确的makefile来运行下面的示例代码:
#include <iostream>
#include <SDL2/SDL.h>
int main(int argc, char **argv){
if (SDL_Init(SDL_INIT_EVERYTHING) != 0){
std::cout << "SDL_Init Error: " << SDL_GetError() << std::endl;
return 1;
}
SDL_Quit();
return 0;
}
这是我想要使用的makefile:
CXX = g++
SDL_LIB = -LC:/SDL2Dev/lib -lSDL2main -lSDL2
SDL_INCLUDE = -IC:/SDL2Dev/include
CXXFLAGS = -Wall -c -std=c++11 $(SDL_INCLUDE)
LDFLAGS = -lmingw32 -mwindows -mconsole $(SDL_LIB)
EXE = SDL_Lesson0.exe
all: $(EXE)
$(EXE): main.o
$(CXX) $< $(LDFLAGS) -o $@
main.o: main.cpp
$(CXX) $(CXXFLAGS) $< -o $@
clean:
del *.o && del $(EXE)
但是,当我去构建它时,我得到了这个
MESSAGE: Entering directory `C:\Users\user\Documents\SDL2Custom\'
C:\Windows\system32\cmd.exe /c "make"
----------Building project:[ SDL2Custom - Debug ]----------
'make' is not recognized as an internal or external command,
operable program or batch file.
0 errors, 0 warnings
我对这些东西非常陌生,因为我只依靠我的IDE来为我做肮脏的工作。我真的想在将来使用SDL2库制作游戏,所以有人可以向我解释如何做到这一点吗?
哦,我确实已经下载了所有的开发库。对我而言,它位于C:/ SDL2Dev中,它包含32位库。
答案 0 :(得分:3)
CodeLite 5.4安装程序附带MinGW捆绑(TDM-GCC 4.8.1) 所以你可能已经安装了它(MinGW)
但是,MinGW使用mingw32-make.exe
而非make
所以在项目设置中更改它:
右键单击树视图(左侧)中的项目图标或按Alt + F7
Settings->Common Settings->Customize->Custom Build
,双击Build
目标并将命令更改为:mingw32-make.exe -j4
-j4
表示:运行4个进程同时进行编译(这通常会增加编译时间)
叶兰
答案 1 :(得分:1)
&#39;使&#39;不被识别为内部或外部命令,可操作程序或批处理文件。
该消息表示名为 make 的IDE构建项目,但操作系统在该系统上找不到任何 make.exe 的迹象。
因此,虽然 make.exe 可能已安装或未安装,但可以确定的是,可执行安装文件夹不在系统 PATH 环境变量中。
编辑:我假设您已经安装了MinGW,在这种情况下,请在该安装文件夹中查找make.exe并确保该文件夹位于PATH中。
答案 2 :(得分:0)
我刚刚解决了“ make”问题。在Codelite 13中创建项目时,我不小心选择了c ++而不是G ++。它创建了一个扩展名为.c而不是.cpp的文件。我更改了扩展名,它可以正常运行。