add source code
This commit is contained in:
		
							
								
								
									
										16
									
								
								CMakeLists.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								CMakeLists.txt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
cmake_minimum_required(VERSION 3.16)
 | 
			
		||||
 | 
			
		||||
project(sdl-window LANGUAGES C)
 | 
			
		||||
 | 
			
		||||
add_executable(sdl-window main.c)
 | 
			
		||||
# 由于我们把SDL2安装在了系统目录中
 | 
			
		||||
# 所以这里可以直接在系统目录中寻找
 | 
			
		||||
find_package(SDL2 REQUIRED)
 | 
			
		||||
 | 
			
		||||
include(GNUInstallDirs)
 | 
			
		||||
install(TARGETS sdl-window
 | 
			
		||||
    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
 | 
			
		||||
    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(${PROJECT_NAME} PRIVATE SDL2::SDL2)
 | 
			
		||||
							
								
								
									
										32
									
								
								main.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								main.c
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
			
		||||
#include <SDL2/SDL_error.h>
 | 
			
		||||
#include <SDL2/SDL_timer.h>
 | 
			
		||||
#include <SDL2/SDL_video.h>
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
#include <SDL2/SDL.h>
 | 
			
		||||
 | 
			
		||||
#undef main
 | 
			
		||||
int main()
 | 
			
		||||
{
 | 
			
		||||
    SDL_Window *window = NULL; // SDL窗口指针
 | 
			
		||||
    SDL_Init(SDL_INIT_VIDEO);
 | 
			
		||||
    
 | 
			
		||||
    window = SDL_CreateWindow("Hello SDL Window", 
 | 
			
		||||
        SDL_WINDOWPOS_UNDEFINED, // 不定义,让系统决定
 | 
			
		||||
        SDL_WINDOWPOS_UNDEFINED, 
 | 
			
		||||
        640, // 宽
 | 
			
		||||
        480, // 高
 | 
			
		||||
        SDL_WINDOW_OPENGL | SDL_WINDOW_RESIZABLE);
 | 
			
		||||
    
 | 
			
		||||
    if (!window) {
 | 
			
		||||
        printf("SDL_CreateWindow() failed, err: %s\n", SDL_GetError());
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    SDL_Delay(10000); // 延迟10000ms
 | 
			
		||||
    
 | 
			
		||||
    SDL_DestroyWindow(window); // 销毁窗口
 | 
			
		||||
    
 | 
			
		||||
    SDL_Quit(); // 释放资源
 | 
			
		||||
    
 | 
			
		||||
    return 0;
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user