cmake设置默认静态链接库

Posted impluse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cmake设置默认静态链接库相关的知识,希望对你有一定的参考价值。

在使用cmake来编写CMakeLists.txt时,如果不特别指明,那么cmake是默认动态链接库的,最终生成的二进制文件只能在与本地相同环境下的机器运行,如果想把生成的二进制拷贝到其他机器上执行,那么会因为缺少相应的动态库而无法执行,解决方法要么是为目标机器部署相应环境,要么是静态链接库方式生成二进制文件。

 

可以在文件中增加这样的设置以进行静态链接:

set(CMAKE_CXX_FLAGS "-static ${CMAKE_CXX_FLAGS}")

 

以上是关于cmake设置默认静态链接库的主要内容,如果未能解决你的问题,请参考以下文章

cmake 强制链接静态库

CMake和静态库顺序

如何理解CMake文档,优先静态库,Cuda混编

使用 c++/cmake 链接静态库

opencv静态链接库cmake链接顺序问题

使用 cmake 如何静态链接一些库和动态链接其他库?