当前想尝试 SDL 库的使用
目录结构为这样:
SDL_C++
├─ CMakeLists.txt
├─ hello_world.bmp
├─ src
│ ├─ CMakeLists.txt
│ ├─ sdl_1_test.cpp
│ └─ sdl_1_test.h
└─ third_party
├─ SDL_x86_32
└─ SDL_x86_64
编译 sdl_1_test
时候,我在 CMakeLists.txt 加了一句:
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-rpath=./third_party/SDL_x86_32/lib -lSDL2")
SDL_x86_32
├─ bin
│ ├─ SDL2.dll
│ ├─ app1.exe
│ └─ sdl2-config
├─ include
│ └─ SDL2
├─ lib
│ ├─ cmake
│ ├─ libSDL2.a
│ ├─ libSDL2.dll.a
│ ├─ libSDL2.la
│ ├─ libSDL2_test.a
│ ├─ libSDL2_test.la
│ ├─ libSDL2main.a
│ ├─ libSDL2main.la
│ └─ pkgconfig
└─ share
└─ aclocal
但最终编译出来的 exe 文件并没链接上 bin 里边的 SDL2.dll, 运行还是会提示 找不到 SDL2 库。需要将 SDL2.dll 和 编译出的 exe 文件同一目录下才能运行。
觉得说的不太清楚的可以配合一下源代码看一下,感谢观看到这里