温馨提示×

centos中怎样配置c++库文件

小樊
34
2026-10-26 12:42:01
栏目: 编程语言

在 CentOS 中“配置 C++ 库文件”通常包含以下几类场景,我按常见情况给你一个系统性说明,你可以对照自己的需求看。


一、安装 C++ 基础环境(最常见)

1. 安装 GCC / G++

sudo yum install gcc gcc-c++

查看版本:

g++ --version

二、使用系统已有的 C++ 库(如 pthread、math 等)

示例:使用数学库

g++ main.cpp -o main -lm

示例:使用线程库

g++ main.cpp -o main -lpthread

三、安装第三方 C++ 库(通过 yum)

示例:安装 boost

sudo yum install boost boost-devel

-devel 包包含头文件和库文件,编译时必须装

使用时:

g++ main.cpp -o main -lboost_system

四、手动编译安装 C++ 库(源码方式)

一般流程(以 CMake 项目为例)

tar -xzf libxxx.tar.gz
cd libxxx
mkdir build && cd build
cmake ..
make -j$(nproc)
sudo make install

默认安装位置通常是:

  • 头文件:/usr/local/include
  • 库文件:/usr/local/lib

五、指定库文件和头文件路径(重点)

编译时指定

g++ main.cpp -o main \
  -I/usr/local/include \
  -L/usr/local/lib \
  -lxxx

说明:

  • -I:头文件路径
  • -L:库文件路径
  • -l:库名(去掉 lib 和 .so/.a)

六、配置动态库搜索路径(运行时报错常见)

如果运行时报错:

error while loading shared libraries: libxxx.so

方法 1:临时生效

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

方法 2:永久生效(推荐)

sudo vim /etc/ld.so.conf.d/xxx.conf

写入:

/usr/local/lib

然后执行:

sudo ldconfig

七、用 pkg-config 简化配置(很多库支持)

g++ main.cpp -o main `pkg-config --cflags --libs opencv`

查看库信息:

pkg-config --libs xxx

八、CMake 中配置 C++ 库(推荐方式)

find_package(Boost REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(app ${Boost_LIBRARIES})

九、常见坑提醒

  • CentOS 7 默认 GCC 较旧(4.8),C++17 支持不完整
    可安装 devtoolset:
    sudo yum install centos-release-scl
    sudo yum install devtoolset-11
    scl enable devtoolset-11 bash
    

如果你能具体说明:

  • 是哪个库(如 OpenCV、Boost、Protobuf)
  • 是 编译报错 还是 运行报错
  • CentOS 版本(7 / 8 / Stream)

我可以给你 更精确的配置命令。

0 踩