创建一个可部署的CMake动态SDL2应用程序

Creating a deployable CMake dynamic SDL2 app

本文关键字:CMake 动态 SDL2 应用程序 部署 一个 创建      更新时间:2023-10-16

创建CMakeLists.txt文件的最简单方法是什么?该文件可以在Linux和Windows之间分发带有动态库的SDL2可执行文件?也就是说,我正在尝试获得一个cmake文件,该文件将向项目中的构建目录发送一个可执行文件,用于以下内容:

#include "SDL.h"
int main()
{
    SDL_Init();
    SDL_Quit();
    return 0;
}

到目前为止,我只看到了如何链接到系统库,但这与Windows不一致,因为Windows不会像Linux自动使用包管理器那样用系统路径注册库。我知道,使用Make,您可以在项目中指定一个lib目录,并在编译期间设置该目录的路径,然后您可以使用终端命令将lib与可执行文件一起转储到文件夹中。

我希望我的项目具有这种自动行为——也就是说,任何下载源代码的人都可以键入cmake,然后制作,并拥有一个独立的目录,其中包含可执行文件和运行程序所需的libs,而无需设置它们的路径。我该怎么做?或者这是部署跨平台应用程序的最佳方式?

FindSDL.cmake用于检测SDL并设置相应的变量。查看文件顶部的文档如何使用