在Windows上使用vcpkg安装SDL2的结论是建议CMake的find_package
应该在“配置”模式下使用。并显示了使用target_link_libraries
和SDL2::SDL2
的示例SDL2::SDL2main
调用。我不熟悉“配置”模式,也不熟悉这些双冒号名称。我通常在寻找PACKAGE_INCLUDE_DIRS
和PACKAGE_LIBRARIES
。因此,我的第一个问题是,假设双冒号名称以某种方式为target_link_libraries
提供了库路径,如何为编译器提供包含路径?
第二,在Ubuntu上,CMake警告未设置策略CMP0028。与双冒号名称有关。然后,使用Make会产生两个错误-无法找到-lSDL2::SDL2
和-lSDL2::SDL2main
。
我希望使用vcpkg在Windows实验室中为C ++图形学生准备一系列库。如果我们的示例项目代码也可以在Linux上运行,那么许多学生也会对此表示赞赏。
我在Windows上的CMake版本是3.12.1;在Ubuntu上为3.10.2;并且vcpkg是昨天(18/08/21)从github repo克隆构建的。