使用MinGW/GCC 對Windows 中SDL2 設置的常見問題進行故障排除
簡介:
如果您在程式中使用SDL2 可能會很困難不熟悉設定流程。本文旨在提供在 Windows 中使用 SDL2 時遇到的常見問題的全面指南,尤其是使用 MinGW/GCC 編譯時。
常見錯誤:
- SDL.h:沒有這樣的檔案或目錄(當編譯)
- 各種SDL_main問題(編譯或連結時)
- 對其他函數的未定義引用(連結時)
- DLL問題(運行時程序)
序言:
-
避免盲目建議:不要遵循defdefine 的#defineine 的建議SDL_MAIN_HANDLED 或#undef main而不了解它們
-
首先從控制台編譯:透過直接從命令列編譯排除任何 IDE 配置問題。
-
下載正確的 SDL2 檔案: 從 SDL2 官方取得 SDL2-devel-2.0.x-mingw.tar.gz 檔案網站。
解決特定錯誤:
SDL.h:沒有這樣的檔案或目錄
- 將-Ipath 加入編譯器標誌中,其中path 是包含SDL.h 的目錄(在提取的SDL2存檔)。
各種 SDL_main 問題
- 確保您有一個帶有簽名 int main(int, char **) 的 main 函數。
- 刪除#define SDL_MAIN_HANDLED 和#undef main if
對各種函數的未定義引用
- 對各種函數的未定義引用
在此指令:-lmingw32 -lSDL2main -lSDL2.- 僅限 WinMain: 與上方相同,確保使用正確的連結器標誌。
特定函數(SDL_main 除外):
驗證您使用的 SDL .a 檔案是否適合您的編譯器架構(32 位元或64 位元)。
查閱文章「如何在 MinGW 中除錯 DLL 問題?」「如何在 MinGW 中除錯 DLL 問題?」
- 其他問題:
-
程式開啟控制台視窗:
將 -mwindows 加入連結器標誌。 -
錯誤「SDL_VideoMode」不是宣告:
SDL_VideoMode 不是 SDL2 的一部分。請改用 SDL2 特定的函數。
預設檔案圖標: 建立 .ico 格式的自訂圖標,將其與 .rc 檔案和 icon.o 檔案一起包含在專案中,並指定連結時的它們。
以上是如何解決 Windows 上 MinGW/GCC 的常見 SDL2 設定問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!