2016-09-03 77 views
1

我真的很陌生,使用C++進行編程,我看過一些這種編程語言的教程。獲得SDL或SDL2與Dev-C++的正常工作

我正在使用Dev-C++ 5.11。

所以我想讓遊戲在YouTube上看到一個教程,並且一步就是正確設置SDL2。所以我開始在Google上搜索並嘗試了一些頁面解釋的東西。但它一直在顯示錯誤。 這裏的最後一個tutorial我嘗試:

編譯器日誌(這是一個有點亂):

C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2main.a when searching for -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe cannot find -lSDL2main 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib\libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.dll.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible C:/dev_lib/SDL2-2.0.4/i686-w64-mingw32/lib/libSDL2.a when searching for -lSDL2 
C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\bin\ld.exe cannot find -lSDL2 
C:\Users\dubcusb\Desktop\dubcusb\CEPLUSPLUS\Empty Projy\collect2.exe [Error] ld returned 1 exit status 
25  C:\Users\dubcusb\Desktop\dubcusb\CEPLUSPLUS\Empty Projy\Makefile.win recipe for target '"Empty' failed 

所以...我還能做什麼?我做錯了什麼?我需要做額外的步驟嗎?

(這是第一個問題,我問在這裏,所以告訴我,如果我做錯了)(我不是以英語爲母語,所以,如果我拼錯的東西,這就是爲什麼)

+2

看來你的目標是64位系統,但只有32位SDL2庫。要麼獲取64位庫(對於mingw,而不是msvc!)或者添加'-m32'編譯器/鏈接器標誌來強制32位目標。 – keltar

+0

Dev-cpp不再被維護。我建議切換到更好的工具(Code :: Blocks或Visual Studio)。以下是SDL的一些不錯的教程:[lazyfoo.net](http://lazyfoo.net) –

+1

非常感謝您的幫助!安裝Code :: Blocks並遵循lazyfoo.net的教程解決了這個問題。 @IvanRubinson – dubcusb

回答

0

我見過有一些與如何配置Dev-C++以便使用SDL2庫有關的多個問題。

首先,我建議您以管理員模式執行IDE。

一旦IDE開始,設置SDL目錄如下:

工具 - >編譯器選項

Compiler Options

二進制文件目錄

Binaries directories

圖書館目錄

Libraries directories

包含目錄

enter image description here

記住你的編譯器版本,在我來說,我的x86目錄,而不是i686的工作。

在另一方面,我添加了包括代碼爲:

#include "SDL.h" 
#include "SDL_image.h" 
#include "SDL_ttf.h" 
#include "SDL_mixer.h" 

最後但並非最不重要的,你必須配置你的項目選項:

項目 - >項目選擇

enter image description here

添加鏈接參數:

enter image description here

而就是這樣。

我希望它能幫助您和其他在配合Dev-C++ IDE中SDL2設置時遇到問題的伴侶。

相關問題