在 CentOS 下配置 C++ 的“路径”,通常分为几种常见场景。下面按最常见用法给你说明,你可以对照自己的需求来看。
假设你有:
/opt/mylib/include/opt/mylib/libg++ main.cpp \
-I/opt/mylib/include \
-L/opt/mylib/lib \
-lmylib \
-o main
说明:
-I :指定 头文件路径(include)-L :指定 库文件路径(link)-l :链接具体库(去掉 lib 和 .so/.a)LD_LIBRARY_PATH(临时)export LD_LIBRARY_PATH=/opt/mylib/lib:$LD_LIBRARY_PATH
./main
⚠️ 只对当前终端有效。
vi ~/.bashrc
添加:
export LD_LIBRARY_PATH=/opt/mylib/lib:$LD_LIBRARY_PATH
然后:
source ~/.bashrc
sudo vi /etc/ld.so.conf.d/mylib.conf
写入:
/opt/mylib/lib
然后执行:
sudo ldconfig
✅ 对所有程序生效。
cmake_minimum_required(VERSION 3.10)
project(demo)
set(CMAKE_CXX_STANDARD 11)
include_directories(/opt/mylib/include)
link_directories(/opt/mylib/lib)
add_executable(demo main.cpp)
target_link_libraries(demo mylib)
编译:
mkdir build && cd build
cmake ..
make
如果你自己写了 g++ 编译出的可执行文件:
sudo cp main /usr/local/bin/
或:
export PATH=$PATH:/your/path
fatal error: xxx.h: No such file or directory
✅ 检查 -I 路径
cannot find -lxxx
✅ 检查 -L 和库名
error while loading shared libraries
✅ 用 ldconfig 或 LD_LIBRARY_PATH
echo $LD_LIBRARY_PATH
ldconfig -p | grep mylib
which g++
g++ --version
如果你能具体说明是:
我可以直接给你针对性的配置示例。