我的 cmake 代码怎么了?它大约winmain@16

What happend with my cmake code? Its about winmain@16

提问人:The new guy 提问时间:11/14/2023 更新时间:11/14/2023 访问量:27

问:

我按照互联网上的教程进行操作,但它不起作用!

cmake_minimum_required(VERSION 3.10)
set(SDL2_DIR "D:/environment/")
set(SDL2_INCLUDE_DIRS "${CMAKE_CURRENT_LIST_DIR}/include")
set(SDL2_LIB "D:/environment/SDL2/lib/x64/SDL2.lib")
set(SDL2_MAIN_LIB "D:/environment/SDL2/lib/x64/SDL2main.lib")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/")
project(SDL2Test)
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIRS})
add_executable(SDL2Test Main.cpp)
set (SDL2_MAIN ON)
target_link_libraries(SDL2Test 
     ${SDL2_MAIN_LIB}
     ${SDL2_LIB}
)

这是我使用make时的错误: c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../libmingw32.a(main.o):(.text.startup+0xc0):对“WinMain@16”的未定义引用

如何解决这个问题?我花了 3 天时间修复它。在此处输入图像描述

调试 CMake WinMain

评论

1赞 Tsyvarev 11/15/2023
下面的库适用于 Visual Studio。您不能将它们与 MinGW 和 gcc 编译器一起使用。您需要找到适合 MinGW 的 SDL2 库。x64/
1赞 vre 11/15/2023
它们适用于 64 位。您正在尝试在 MinGW 上构建 32 位。
0赞 The new guy 11/15/2023
好的,我会再试一次,谢谢
0赞 The new guy 11/15/2023
嘿,互联网上有教程吗?

答: 暂无答案