使用spdlog添加日志时链接阶段提示找不到lsplog库的问题
解决spdlog链接阶段找不到库的问题
首先纠正笔误
你的链接错误提示cannot find -lsplog,这里明显是拼写错误:正确的库名是spdlog,对应的链接参数应该是-lspdlog。先检查你的构建脚本(比如CMakeLists.txt、Makefile),把所有写splog的地方改成spdlog。
系统未安装spdlog的解决方法
因为你确认系统里没装这个库,有两种常用解决途径:
1. 源码直接集成(推荐,无需系统安装)
spdlog是头文件优先的日志库,支持轻量集成:
- 下载spdlog源码,将
include/spdlog目录复制到你的项目头文件路径下 - 如果需要静态链接(而非仅头文件模式),把源码里的
src/spdlog.cpp添加到你的项目编译源文件列表中,这样编译时会直接把库代码打包进你的可执行文件,不需要额外链接系统库
2. 系统级安装spdlog
根据你的Linux发行版选择对应命令安装:
- Debian/Ubuntu系:
sudo apt update && sudo apt install libspdlog-dev - RHEL/CentOS/Fedora系:
sudo dnf install spdlog-devel
安装完成后,确保构建脚本正确引用库:比如CMake中可以用:
find_package(spdlog REQUIRED) target_link_libraries(your_project_name PRIVATE spdlog::spdlog)
内容的提问来源于stack exchange,提问作者omar abu abdullah
相关产品推荐
相关产品推荐

