通常可以手工在编译代码时增加选项-fPIC
或者-fpic
,指示编译器生成位置无关的代码。
cmake提供了选项CMAKE_POSITION_INDEPENDENT_CODE
用于标记是否开启位置无关代码特性是否开启。
即在CMakeLists.txt
中增加如下代码。
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
通过百度搜索到的中文资料比较丰富,如下是部分帖子:
若非注明,均为原创,欢迎转载,转载请注明来源:cmake使用FAQ:生成位置无关代码