小编Nuu*_*les的帖子

将 SDL2 与 CMake 链接

我在将 SDL2 链接到我的项目时遇到问题,这可能是因为我是 CMake 的新手,我不完全知道如何用它创建新项目。我尝试解决此问题的每次和方法都会导致以下问题之一:

  1. “找不到 WinMain@16”
  2. 多个未定义的引用错误
  3. 对“SDL_main”的未定义引用

我尝试使用 find_package,直接链接到文件,链接到库文件,遵循教程(例如https://trenki2.github.io/blog/2017/06/02/using-sdl2-with-cmake/),寻找答案(他们中的大多数人谈论使用我无法开始工作的 find_package)(例如将 SDL2 与 CMake 一起使用)。

项目依赖

SDL 2.0.12、CMake 3.17.0、7-Zip、mingw32-make、wget

该项目应该是跨平台的,但主要的 devenv 是 Windows 10。所有脚本都从根文件夹“vivaria”运行。

项目结构

vivaria/
??? build/
?   ??? [cmake build files]
??? buildtools/
?   ??? SDL2/SDL2-2.0.12/lib/x86 (and x64)
?                            ??? SDL2.lib
?                            ??? SDL2main.libs
??? deploy/
??? resources/
??? scripts/
?   ??? build_windows_debug_x86.bat
?   ??? install_buildtools_windows.bat
??? src/
    ??? CMakeLists.txt
    ??? vivaria.cpp
Run Code Online (Sandbox Code Playgroud)

build_windows_debug_x86.bat

cmake -G "MinGW Makefiles" -S .\src\ -B .\build\ -DCMAKE_BUILD_TYPE=Debug
cd …
Run Code Online (Sandbox Code Playgroud)

c++ cmake sdl-2

3
推荐指数
1
解决办法
3896
查看次数

标签 统计

c++ ×1

cmake ×1

sdl-2 ×1