1. 报错:CMake Error: install(EXPORT “glog–targets” …) includes target “glog” which requires target “gflags_nothreads_static” that is not in any export set.
在CMakeLists.txt里面添加,因为我已经存在,不需要创建,所以可以去掉创建静态库这个命令:
# 创建静态库
add_library(fse_cas_static STATIC ${_SOURCE_FILES})
# 创建interface libraries
add_library(not_exported INTERFACE)
target_link_libraries(fse_cas_static PRIVATE not_exported)
# 安装脚本,生成导出文件fse-targets.cmake
install(TARGETS fse_cas_static EXPORT fse-targets DESTINATION lib)
# 安装导出文件fse-targets.cmake
install(EXPORT fse-targets DESTINATION lib/cmake/Exp)
2.报错:编译安装报错unrecognized command line option “-std=c++14” 无法识别的命令行选项“-std=c++14” 的解决办法
解决参考办法
这是因为gcc++的版本不匹配,一般要将gcc+版本升级
可以用gcc --version
来查询当前版本
注意:如果你的库里面有好几个版本的gcc,可以选择对应的版本,然后添加到环境变量中:
vim ~./bashrc
export PATH=/mnt/lustre/share/gcc/gcc-5.3.0/bin:$PATH
export LD_LIBRARY_PATH=/mnt/lustre/share/gcc/gcc-5.3.0/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/mnt/lustre/share/gcc/gcc-5.3.0/lib64:$LD_LIBRARY_PATH
#不要忘记这一步
source ~./bashrc
#查看gcc版本
gcc --version
#编译CMakeLists.txt
cmake -D CMAKE_CXX_COMPILER=/to/your/path/bin/g++ ..
3.报错:CMake Error at fc_base/gflags-src/CMakeLists.txt:282 (message): Do not know how to define a 32-bit integer quantity on your system
这是编码格式出现了问题
在cmake编译的时候加上这个 -DINTTYPES_FORMAT:STRING=C99
命令
cmake -DINTTYPES_FORMAT:STRING=C99 ../
原文地址:https://blog.csdn.net/weixin_45191074/article/details/126231675
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_46424.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!