转到底部查看解决方案。
大家好,我一直在谷歌搜索'looooong时间,我没有发现任何事情,所以,我们走了:
我有这个设置:
编译器:MinGW
IDE:Netbeans
图书馆:SDL
语言: C ++
Okey,所以,我已经包含了这个文件夹:"C:/SDL_1.2.15/include"
并按此顺序链接这些库:
-lmingw32
-lSDL_main
-lSDL
然后,如果我使用没有#include "SDL/SDL.h"
的普通程序,那么编译okeey。
因此,如果我包含SDL头文件,IDE会给我绿灯以编译然后,我得到这个输出:
"C:/WinAVR-20090313/utils/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `C:/Users/pablo/Documents/NetBeansProjects/SDL_Test'
"C:/WinAVR-20090313/utils/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/sdl_test.exe
make[2]: Entering directory `C:/Users/pablo/Documents/NetBeansProjects/SDL_Test'
mkdir -p build/Debug/MinGW-Windows
rm -f build/Debug/MinGW-Windows/main.o.d
g++.exe -c -g -Wall -I/C/MinGW/include -I/C/SDL-1.2.15/include -MMD -MP -MF build/Debug/MinGW-Windows/main.o.d -o build/Debug/MinGW-Windows/main.o main.cpp
make[2]: Leaving directory `C:/Users/pablo/Documents/NetBeansProjects/SDL_Test'
make[1]: Leaving directory `C:/Users/pablo/Documents/NetBeansProjects/SDL_Test'
main.cpp:11:21: error fatal: SDL/SDL.h: No such file or directory
compilaci�n terminada.
make[2]: *** [build/Debug/MinGW-Windows/main.o] Error 1
make[1]: *** [.build-conf] Error 2
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 2s)
原来如此!这是我的应用程序的源代码,它只有一个'main.cpp'文件:
/*
* File: main.cpp
* Author: pablo
*
* Created on 1 de septiembre de 2013, 23:20
*/
#include <cstdlib>
#include <windows.h>
#include <SDL/SDL.h>
using namespace std;
/*
*
*/
int main(int argc, char** argv) {
return 0;
}
我发现了新问题;当我删除#include(注释//)然后控制台抛出这个错误而不是'没有这样的文件或目录':
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: cannot find -lSDLmain
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: cannot find -lSDL.dll
当我使用Cygwin编译器编译没有#include时,项目正确构建。
发现了另一个问题:
make[2]: *** No rule to make target `/C/SDL-1.2.15/lib/libSDLmain.a', needed by `dist/Debug/MinGW-Windows/sdl_test.exe'. Stop.
当我添加SDL库的完整路径而不是-lSDL.dll和-lSDL_main
时会发生这种情况解决方案:
The problem solves coping c:/SDL-1.15/include/SDL/ folder to c:/MinGW/include/ directory, and libraries from lib on c:/SDL-1.15/lib/SDL to MinGW/lib
答案 0 :(得分:0)
您必须单独添加标题。 仅仅做包含是不够的,你必须做多件事来在你的项目中添加像SDL这样的东西。