如何将 SDL2 用作我的静态 (CMake ) 库的 3D 方依赖项?
How to use SDL2 as 3d-party dependencie on my static ( CMake ) library?
我在Linux上,我在使用静态库的CMake项目中使用SDL2时遇到问题。当我将my_static_library与my_custom_project链接时,尽管我已经将 SDL2 与静态库链接,但我从 SDL2 调用中获得了未定义的引用。
例如:my_static_library CMakeLists.txt
[...]
# SDL2 package
find_package(SDL2 REQUIRED)
if (SDL2_FOUND)
message(STATUS ${SDL2_LIBRARY} " SDL2 Library has been found!")
include_directories(${SDL2_INCLUDE_DIR})
else()
message(FATAL_ERROR "Cannot find SDL2 Library!")
endif()
[...]
add_library(my_static_library STATIC ${SOURCE_FILES})
target_link_libraries(nile_static PUBLIC ${SDL2_LIBRARY})
my_custom_project CMakeLists.txt
[...]
target_include_directories(${PRODUCT_NAME} PRIVATE
${MY_STATIC_LIB_DIR}/include)
[...]
target_link_libraries(${PROJECT_NAME} my_static_lib})
除 SDL2 之外的任何其他依赖链接(OpenGL、glew、stb、freetype 等(。
对此有什么想法吗?
如果您的静态库动态链接到 SDL2,则应根据您的项目向项目添加对 SDL2 的搜索。
相关文章:
- 如何从C++中的依赖类型中获得它所依赖的类型
- 嵌入方指针压缩已禁用
- 无法将结构注册为增强几何体3D点
- OpenGL大的3D纹理(>2GB)非常慢
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 将依赖名称显式标记为类型名和模板的奇怪之处
- 在 Windows 上,是否可以让 dll 在不使用 PATH 环境变量的情况下在另一个文件夹中查找依赖项?
- C++GTKMM gui循环依赖关系
- 通过ccmake在cmake中缓存依赖选项
- 是什么导致了Unity 3D中的"错误线程异常"?
- 为什么是谷神星协方差.计算()似乎永远运行而不返回?
- 从类型std::函数传递变量失败,尽管调用方期望的类型完全相同
- 当基类是依赖类型时,这是一个缺陷吗
- 如何声明一个可以在整个程序中使用的全局 2d 3d 4d .. 数组(堆版本)变量?
- 将错误返回给调用方而不是立即在 C++ 中抛出错误是否是一种好的做法
- 从不同的附加依赖项中识别等同命名的函数
- 如何在 CMake 中对目标依赖项进行分组?
- 是否可以依赖函数范围的静态变量来执行程序关闭期间调用的方法?
- 使 \page 和 \subpage 参考 doxygen 中的方法文档
- 如何将 SDL2 用作我的静态 (CMake ) 库的 3D 方依赖项?