CMAKE 使用 MinGW 构建 gui 应用程序
CMAKE build gui application with MinGW
我想用 SDL2 构建 gui 应用程序。我 link SDL2 库(libSDL2.dll.a
和 libSDL2main.a
),但我不知道如何将 -mwindows
标志应用到我的应用程序。没有他 .exe
我的应用程序文件不会显示 window (执行没有任何效果)。我使用 MinGW-w64,我的 OS 是 Windows 10。在命令行中,我可以像 here 那样执行此操作(参见 B 部分)。如何使用 cmake
应用此标志?控制台应用程序工作正常。
我尝试下一个变体,但它不起作用。
cmake -G "MinGW Makefiles" -D CMAKE_C_COMPILER=gcc -D CMAKE_CXX_COMPILER=g++ -D CMAKE_EXE_LINKER_FLAGS="-mwindows"
cmake -G "MinGW Makefiles" -D CMAKE_C_COMPILER=gcc -D CMAKE_CXX_COMPILER=g++ -D CMAKE_CXX_FLAGS="-mwindows"
也在 CMakeLists.txt
我尝试这样做
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mwindows")
您可以将 WIN32
参数传递给 add_executable
,CMake 会为您执行此操作:
add_executable(target_name WIN32 ${sources})
我基本上是复制粘贴了 CLion 在命令行中执行的内容,并且有效:
$ cmake DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - MinGW Makefiles" ../
$ cmake --build ./ --target target_name -j 6
[ 50%] Building CXX object CMakeFiles/target_name.dir/main.cpp.obj
[100%] Linking CXX executable target_name.exe
[100%] Built target tree_traverse
此后可执行文件 target_name.exe
出现在目录中。
我想用 SDL2 构建 gui 应用程序。我 link SDL2 库(libSDL2.dll.a
和 libSDL2main.a
),但我不知道如何将 -mwindows
标志应用到我的应用程序。没有他 .exe
我的应用程序文件不会显示 window (执行没有任何效果)。我使用 MinGW-w64,我的 OS 是 Windows 10。在命令行中,我可以像 here 那样执行此操作(参见 B 部分)。如何使用 cmake
应用此标志?控制台应用程序工作正常。
我尝试下一个变体,但它不起作用。
cmake -G "MinGW Makefiles" -D CMAKE_C_COMPILER=gcc -D CMAKE_CXX_COMPILER=g++ -D CMAKE_EXE_LINKER_FLAGS="-mwindows"
cmake -G "MinGW Makefiles" -D CMAKE_C_COMPILER=gcc -D CMAKE_CXX_COMPILER=g++ -D CMAKE_CXX_FLAGS="-mwindows"
也在 CMakeLists.txt
我尝试这样做
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mwindows")
您可以将 WIN32
参数传递给 add_executable
,CMake 会为您执行此操作:
add_executable(target_name WIN32 ${sources})
我基本上是复制粘贴了 CLion 在命令行中执行的内容,并且有效:
$ cmake DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - MinGW Makefiles" ../
$ cmake --build ./ --target target_name -j 6
[ 50%] Building CXX object CMakeFiles/target_name.dir/main.cpp.obj
[100%] Linking CXX executable target_name.exe
[100%] Built target tree_traverse
此后可执行文件 target_name.exe
出现在目录中。