温馨提示×

linux c++配置怎样装库文件

小樊
43
2026-09-26 07:34:18
栏目: 编程语言

在 Linux 下用 C++ 使用/安装库文件,一般分几种情况。下面按最常见场景给你一个清晰、实用的说明。


一、使用系统包管理器安装库(最推荐)

1️⃣ Debian / Ubuntu / Linux Mint

sudo apt update
sudo apt install libxxx-dev

示例(安装 OpenCV):

sudo apt install libopencv-dev

⚠️ 开发必须用 -dev 包(包含头文件和 .so)


2️⃣ CentOS / Rocky / Alma

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

示例:

sudo dnf install opencv-devel

3️⃣ Arch Linux

sudo pacman -S xxx

二、编译时如何使用库

假设你安装了 libfoo

示例代码

#include <foo.h>

int main() {
    foo();
}

编译命令

g++ main.cpp -o main -lfoo
  • -lfoo 表示链接 libfoo.so
  • 头文件默认在 /usr/include
  • 库文件默认在 /usr/lib 或 /usr/lib64

三、库文件放在非标准路径(常见情况)

假设:

头文件:/opt/foo/include
库文件:/opt/foo/lib

编译方式

g++ main.cpp -o main \
  -I/opt/foo/include \
  -L/opt/foo/lib \
  -lfoo

运行时找不到 .so

export LD_LIBRARY_PATH=/opt/foo/lib:$LD_LIBRARY_PATH
./main

或永久生效(不推荐全局):

sudo echo "/opt/foo/lib" > /etc/ld.so.conf.d/foo.conf
sudo ldconfig

四、自己编译安装的库(源码安装)

以 CMake 项目为例:

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

默认安装到:

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

编译时:

g++ main.cpp -lfoo

五、用 CMake 管理库(工程推荐)

find_package(foo REQUIRED)

add_executable(main main.cpp)
target_link_libraries(main foo)

如果是自定义路径:

cmake -DCMAKE_PREFIX_PATH=/opt/foo ..

六、常见错误速查

错误 原因
fatal error: xxx.h 没装 -dev 或 -I 错
undefined reference 忘记 -lxxx
cannot find -lxxx -L 路径不对
运行时 cannot open shared object LD_LIBRARY_PATH 没设

七、你可以告诉我这些,我可以更精确帮你

  1. 用的 Linux 发行版
  2. 想装 什么库(如 OpenCV / Boost / protobuf)
  3. 是 apt 安装 还是 源码编译
  4. 编译工具(g++ / CMake)

我可以直接给你一步一步命令。

0 踩