当前位置: 首页 > news >正文

GICI —编译运行glog报错

检查以下几点

1. cmake版本要大于3.22

先看cmake版本够不够,出现以下错误

CMake Error at CMakeLists.txt:1 (cmake_minimum_required): CMake 3.22 or higher is required. You are running version 3.15.0 -- Configuring incomplete, errors occurred!

升级cmake版本,按步骤执行

sudo apt remove -y cmake sudo apt autoremove -y # 下载 3.22.6 版本的 Linux x86_64 安装包 wget https://github.com/Kitware/CMake/releases/download/v3.22.6/cmake-3.22.6-linux-x86_64.sh # 赋予执行权限 chmod +x cmake-3.22.6-linux-x86_64.sh # 执行安装脚本,指定安装路径为 /usr/local,跳过许可协议 sudo ./cmake-3.22.6-linux-x86_64.sh --prefix=/usr/local --skip-license # 刷新系统命令缓存(确保能识别新的 cmake 命令) hash -r cmake --version
cmake version 3.22.6 CMake suite maintained and supported by Kitware (kitware.com/cmake).

2.先安装 gflags再安装glog

sudo git clone https://github.com/gflags/gflags.git cd gflags/ sudo mkdir build && cd build sudo cmake .. -DGFLAGS_NAMESPACE=google -DCMAKE_CXX_FLAGS=-fPIC .. sudo make -j16 sudo make install

3. glog 安装0.4.0版本

因为我在编译GICI时出现了下面这种问题,

/usr/bin/ld: libgici.so: undefined reference to `google::base::CheckOpMessageBuilder::CheckOpMessageBuilder(char const*)'
/usr/bin/ld: libgici.so: undefined reference to `google::LogMessage::LogMessage(char const*, int, int)'/usr/bin/ld: libgici.so: undefined reference to `google::base::CheckOpMessageBuilder::~CheckOpMessageBuilder()'
/usr/bin/ld: libgici.so: undefined reference to `google::base::CheckOpMessageBuilder::ForVar2()'
/usr/bin/ld: libgici.so: undefined reference to `google::kLogSiteUninitialized'
/usr/bin/ld: libgici.so: undefined reference to `google::LogMessageFatal::LogMessageFatal(char const*, int, google::CheckOpString const&)'
/usr/bin/ld: libgici.so: undefined reference to `google::InitVLOG3__(int**, int*, char const*, int)'
/usr/bin/ld: libgici.so: undefined reference to `google::base::CheckOpMessageBuilder::NewString[abi:cxx11]()'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/gici_main.dir/build.make:173: gici_main] Error 1
make[1]: *** [CMakeFiles/Makefile2:189: CMakeFiles/gici_main.dir/all] Error 2
make: *** [Makefile:91: all] Error 2

修改了cmakelist中 glog的路径为绝对路径也不行,于是重新安装了glog。但是安装过程中也没有任何问题。最后的最后安装了一个0.4.0版本,编译成功了................

# 进入你的常用源码目录(比如家目录) cd ~ # 下载 glog 0.4.0 wget https://github.com/google/glog/archive/refs/tags/v0.4.0.tar.gz # 解压 tar -xzvf v0.4.0.tar.gz # 进入源码目录 cd glog-0.4.0 # 创建并进入 build 目录 mkdir build && cd build # 配置 CMake (生成共享库) cmake .. # 编译 (使用4核加速) make -j4 # 安装到系统目录 (需要密码) sudo make install

然后删除之前的build ,重新编译gici 才成功

http://www.jsqmd.com/news/505925/

相关文章:

  • MGeo地址解析模型开源镜像部署案例:Gradio一键启动地址结构化服务
  • [Hello-CTF]RCE-labs靶场:从零到一的Docker化实战指南
  • PLC编程中的线圈类型全解析:从M到RLO,手把手教你正确使用
  • MiniCPM-o-4.5-nvidia-FlagOS快速开始:使用CSDN星图GPU平台实现一键免配置部署
  • 基于化学模体的多尺度图自监督学习:分子性质预测新范式
  • 为什么你的Dify RAG召回率始终卡在75%?资深架构师拆解4层漏斗损耗(语义切分→向量对齐→重排打分→结果融合)
  • C语言RTOS裁剪性能测试必须做的7项硬核指标验证:从WCET到ISR响应抖动,缺一不可
  • 风电光伏的场景生成与消减-matlab代码 可利用蒙特卡洛模拟或者拉丁超立方生成光伏和风电出力场景
  • 2026年云盘哪个好?全网实测+深度解析,选对云盘效率翻倍!
  • 2026电脑个人网盘软件推荐:国内免费又好用的个人网盘工具盘点
  • 春联生成模型训练数据爬取与处理实战:构建高质量中文对联语料库
  • 计算机原理—条件变量为什么会有假唤醒
  • SA8155开发板实战:用ADB和BusyBox快速搭建QNX Shell调试环境
  • 别再死记HashMap了!多线程死循环、数据丢失,这些坑90%的人都踩过
  • 三万亩樱桃花开,九洞天邀全民拍春——短视频大赛启动
  • 数学建模实战:从K-means到DBSCAN的聚类算法全解析
  • YOLOv12镜像优化升级:支持TensorRT导出,边缘部署更便捷
  • HDR与SDR核心转换:Gamma、HLG、PQ的视觉模型与参数设计解析
  • OpenClaw如何配置以及相关的开源AI项目汇总大全(2026最新版)
  • MySQL基础操作清单
  • 记不住 Linux 命令?我写了个终端,点一下就行
  • 深度学习性能优化:GFLOPS与GPU选型实战指南
  • 《认知流形上的场方程及其在碳硅关系中的应用》(沙地实验)
  • 让数据说话:运营场景下高效产出专业图表工具推荐
  • MQ-6丙烷传感器在GD32E230上的ADC+DMA采集实现
  • 京东E卡回收攻略,教你如何快速兑换现金! - 团团收购物卡回收
  • 2026年3月,3公里内宠物医院哪家强?来评测 - 品牌推荐师
  • 手把手教你用Spiffo开发板搭建最小Linux系统(附全志H618避坑指南)
  • 效果对比:Qwen-Image-Edit-F2P在不同算力GPU下的生成速度与质量评测
  • 3分钟搭建专属Java在线编译器:零配置开发环境终极指南