在 CentOS 上设置 C++ 路径,通常指下面几种情况之一。我按常见场景分别说明,你可以对照使用。
如果你编译生成了一个 C++ 可执行文件,想在任何目录直接运行它。
g++ main.cpp -o myapp
export PATH=$PATH:/path/to/your/app
编辑用户环境变量:
vi ~/.bashrc
添加一行:
export PATH=$PATH:/path/to/your/app
生效:
source ~/.bashrc
用于 g++ 编译时查找 .h 文件。
g++ main.cpp -I/usr/local/include/mylib
多个路径:
g++ main.cpp -I/path1 -I/path2
用于链接 .so 或 .a 库。
g++ main.cpp -L/usr/local/lib -lmylib
如果程序运行时报:
error while loading shared libraries
需要设置动态库路径:
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
sudo vi /etc/ld.so.conf.d/mylib.conf
写入:
/usr/local/lib
然后执行:
sudo ldconfig
如果你是 CMake 项目:
include_directories(/usr/local/include)
link_directories(/usr/local/lib)
target_link_libraries(myapp mylib)
echo $PATH
echo $LD_LIBRARY_PATH
g++ -print-search-dirs
❌ 只设置了 -L 没设置 LD_LIBRARY_PATH
❌ 头文件路径写错
❌ 没执行 ldconfig
sudo yum install gcc gcc-c++ make
查看版本:
g++ --version
如果你能具体说明你是:
我可以直接给你针对你场景的完整配置示例。