如何使CMake将可执行文件链接到不在同一CMake项目中构建的外部共享库?
只做target_link_libraries(GLBall ${CMAKE_BINARY_DIR}/res/mylib.so)
给出错误
make[2]: *** No rule to make target `res/mylib.so', needed by `GLBall'. Stop.
make[1]: *** [CMakeFiles/GLBall.dir/all] Error 2
make: *** [all] Error 2
(GLBall is the executable)
将库复制到二进制目录
bin/res
后。我尝试使用
find_library(RESULT mylib.so PATHS ${CMAKE_BINARY_DIR}/res)
失败与
RESULT-NOTFOUND
。
最佳答案
首先设置库搜索路径:
LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/res)
然后做
TARGET_LINK_LIBRARIES(GLBall mylib)
关于cmake - CMake链接到外部库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62702720/