
检查以下几点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 --versioncmake version 3.22.6 CMake suite maintained and supported by Kitware (kitware.com/cmake).2.先安装 gflags再安装glogsudo git clone https://github.com/gflags/gflags.git cd gflags/ sudo mkdir build cd build sudo cmake .. -DGFLAGS_NAMESPACEgoogle -DCMAKE_CXX_FLAGS-fPIC .. sudo make -j16 sudo make install3. 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 statusmake[2]: *** [CMakeFiles/gici_main.dir/build.make:173: gici_main] Error 1make[1]: *** [CMakeFiles/Makefile2:189: CMakeFiles/gici_main.dir/all] Error 2make: *** [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 才成功