C++ 如何让SDL2在Mac上的CLION上工作?还是更好的方法?
所以我一直在到处寻找,试图找出如何设置这个。我正在使用MacOS 11,我正在尝试让SDL2在我的笔记本电脑上工作。 我的CMakeLists.txt文件如下所示C++ 如何让SDL2在Mac上的CLION上工作?还是更好的方法?,c++,cmake,sdl-2,clion,C++,Cmake,Sdl 2,Clion,所以我一直在到处寻找,试图找出如何设置这个。我正在使用MacOS 11,我正在尝试让SDL2在我的笔记本电脑上工作。 我的CMakeLists.txt文件如下所示 cmake_minimum_required(VERSION 3.19) project(SDL_practice) set(CMAKE_CXX_STANDARD 14) # includes cmake/FindSDL2.cmake set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmak
cmake_minimum_required(VERSION 3.19)
project(SDL_practice)
set(CMAKE_CXX_STANDARD 14)
# includes cmake/FindSDL2.cmake
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIR})
set(SOURCE_FILES main.cpp)
add_executable(SDL2_App ${SOURCE_FILES})
target_link_libraries(SDL2_App ${SDL2_LIBRARY})
set(SOURCE_FILES main.cpp)
add_executable(SDL2_Lesson_1 ${SOURCE_FILES})
#include <iostream>
#include <SDL2/sdl.h>
int main(int argc, char * argv[]) {
SDL_Init(SDL_INIT_VIDEO);
SDL_Window *window = SDL_CreateWindow("Fen", 640, 480, 640, 480, SDL_WINDOW_SHOWN);
auto screenSurface = SDL_GetWindowSurface( window );
SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );
SDL_UpdateWindowSurface( window );
SDL_Delay(3000);
SDL_DestroyWindow( window );
SDL_Quit();
return 0;
}
我写了一些代码来创建一个如下所示的窗口
cmake_minimum_required(VERSION 3.19)
project(SDL_practice)
set(CMAKE_CXX_STANDARD 14)
# includes cmake/FindSDL2.cmake
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
find_package(SDL2 REQUIRED)
include_directories(${SDL2_INCLUDE_DIR})
set(SOURCE_FILES main.cpp)
add_executable(SDL2_App ${SOURCE_FILES})
target_link_libraries(SDL2_App ${SDL2_LIBRARY})
set(SOURCE_FILES main.cpp)
add_executable(SDL2_Lesson_1 ${SOURCE_FILES})
#include <iostream>
#include <SDL2/sdl.h>
int main(int argc, char * argv[]) {
SDL_Init(SDL_INIT_VIDEO);
SDL_Window *window = SDL_CreateWindow("Fen", 640, 480, 640, 480, SDL_WINDOW_SHOWN);
auto screenSurface = SDL_GetWindowSurface( window );
SDL_FillRect( screenSurface, NULL, SDL_MapRGB( screenSurface->format, 0xFF, 0xFF, 0xFF ) );
SDL_UpdateWindowSurface( window );
SDL_Delay(3000);
SDL_DestroyWindow( window );
SDL_Quit();
return 0;
}
#包括
#包括
int main(int argc,char*argv[]){
SDL_Init(SDL_Init_视频);
SDL_Window*Window=SDL_CreateWindow(显示为Fen、640、480、640、480、SDL_Window);
自动屏幕表面=SDL_GetWindowSurface(窗口);
SDL_FillRect(屏幕表面,NULL,SDL_映射RGB(屏幕表面->格式,0xFF,0xFF,0xFF));
SDL_更新内表面(窗口);
SDL_延迟(3000);
SDL_窗口(窗口);
SDL_退出();
返回0;
}
当我运行此代码时,我的计算机上不会弹出任何窗口。
在设置或cpp文件中是否存在导致此问题的错误。或者如果有更好的方法在mac上学习SDL2,请告诉我 这回答了你的问题吗?