【问题标题】:SDL MinGW Netbeans. <SDL/SDL.h> no such file or directorySDL MinGW Netbeans。 <SDL/SDL.h> 没有这样的文件或目录
【发布时间】:2013-09-02 17:21:17
【问题描述】:

问题已解决

到底部查看解决方案。

大家好,我已经在谷歌上搜索了很久,但我没有找到任何东西,所以,我们开始吧:

我有这个设置:

编译器:MinGW
IDE:Netbeans
库:SDL
语言: C++

好的,所以,我已经包含了这个文件夹:"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

【问题讨论】:

    标签: c++ netbeans compilation sdl


    【解决方案1】:

    您必须单独添加标题。 仅仅做包含是不够的,你必须做很多事情才能在你的项目中添加一个像 SDL 这样的东西。

    【讨论】:

    • 那么什么样的标题?其余的 SDL 包含文件夹可能吗?我尝试使用 Cygwin 或 Cygwin3,但两者都让我很头疼,并且没有关于如何使用 netbeans 和 MinGW 或 Cygwin 设置 SDL 的教程,仅适用于 DevC++、代码块、VisualStudio,以及使用 CMD 而不是 netbeans.PD:谢谢回应!
    • 使用带有代码块的那些来指导您。会有差异,但找到两个 IDE 的等价物并不难。
    猜你喜欢
    • 2012-11-04
    • 2011-10-14
    • 2011-12-08
    • 2013-05-04
    • 2023-02-22
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    • 2014-04-22
    相关资源
    最近更新 更多