温馨提示×

Linux C++如何配置库

小樊
38
2026-08-16 00:27:48
栏目: 编程语言

在 Linux 下配置 C++ 的第三方库,通常分为 安装库 → 配置编译 → 链接库 三个步骤。下面按最常见、最实用的方式给你一个完整说明。


一、常见库的安装方式

✅ 1. 使用包管理器(最简单,推荐)

Ubuntu / Debian

sudo apt update
sudo apt install libxxx-dev

例如:

sudo apt install libopencv-dev
sudo apt install libboost-all-dev
sudo apt install libssl-dev

注意:

  • libxxx:运行时库
  • libxxx-dev:开发用(头文件 + .so

CentOS / Rocky / Alma

sudo yum install xxx-devel
# 或
sudo dnf install xxx-devel

✅ 2. 从源码编译安装(适合定制版本)

git clone https://github.com/xxx/xxx.git
cd xxx
mkdir build && cd build
cmake ..
make -j$(nproc)
sudo make install

默认安装位置:

/usr/local/include
/usr/local/lib

二、在 C++ 中使用库

示例:使用 OpenSSL

1️⃣ 代码中包含头文件

#include <openssl/ssl.h>

2️⃣ 编译时指定库

使用 g++
g++ main.cpp -o app -lssl -lcrypto
使用 clang++
clang++ main.cpp -o app -lssl -lcrypto

三、如果库不在默认路径(常见坑)

情况 1:头文件找不到

fatal error: xxx.h: No such file or directory

✅ 解决:

g++ main.cpp -I/usr/local/include

情况 2:库文件找不到

cannot find -lxxx

✅ 解决:

g++ main.cpp -L/usr/local/lib -lxxx

情况 3:运行时找不到 .so

error while loading shared libraries

✅ 解决(临时):

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

✅ 解决(永久):

sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/local.conf'
sudo ldconfig

四、使用 CMake(工业级推荐 ✅)

示例 CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(MyApp)

find_package(OpenSSL REQUIRED)

add_executable(myapp main.cpp)
target_link_libraries(myapp OpenSSL::SSL OpenSSL::Crypto)

编译

mkdir build && cd build
cmake ..
make

✅ CMake 会自动处理:

  • 头文件路径
  • 库路径
  • 链接顺序

五、查看库是否安装成功

头文件

ls /usr/include/xxx
ls /usr/local/include/xxx

库文件

ldconfig -p | grep xxx

六、常见库配置速查表

安装 链接
OpenCV libopencv-dev -lopencv_core -lopencv_imgproc
Boost libboost-all-dev -lboost_system
OpenSSL libssl-dev -lssl -lcrypto
pthread 系统自带 -lpthread
math 系统自带 -lm

七、推荐学习路径

✅ 新手:

apt 安装 → g++ 手动链接 → 理解 -I -L -l

✅ 工程化:

CMake + find_package()


如果你愿意,可以直接告诉我:

  • 你用的是 Ubuntu / CentOS / Arch
  • 想配置 哪个库
  • g++ / clang / CMake

我可以给你精确到命令级别的配置方案。

0