在 Ubuntu 下设置 C++ 路径,常见有几种不同场景,下面按最常用到最完整给你说明。你可以对照自己属于哪一种。
假设你有一个 C++ 程序:
// hello.cpp
#include <iostream>
int main() {
std::cout << "Hello Ubuntu\n";
}
编译:
g++ hello.cpp -o hello
查看当前 PATH:
echo $PATH
把 hello 放到 PATH 目录中,例如 /usr/local/bin:
sudo mv hello /usr/local/bin/
然后就可以直接运行:
hello
✅ 适合:自己写的小工具、命令行程序
export PATH=$PATH:$(pwd)
⚠️ 只在当前终端有效,关闭终端就失效。
编辑 ~/.bashrc 或 ~/.zshrc:
nano ~/.bashrc
在最后加一行:
export PATH=$PATH:/your/path
保存后执行:
source ~/.bashrc
g++ main.cpp -I /path/to/include
例如:
g++ main.cpp -I /home/user/mylib/include
sudo cp myheader.h /usr/local/include/
然后直接:
#include <myheader.h>
g++ main.cpp -L /path/to/lib -lmylib
如果库不在系统路径,运行时会报错:
error while loading shared libraries
解决方法:
/etc/ld.so.conf.d/sudo nano /etc/ld.so.conf.d/mylib.conf
内容:
/path/to/lib
然后执行:
sudo ldconfig
export LD_LIBRARY_PATH=/path/to/lib:$LD_LIBRARY_PATH
include_directories(/path/to/include)
link_directories(/path/to/lib)
target_link_libraries(app mylib)
| 目的 | 设置方式 |
|---|---|
| 可执行程序路径 | PATH |
| 头文件路径 | -I |
| 库文件路径 | -L |
| 运行时库 | ldconfig / LD_LIBRARY_PATH |
| 永久生效 | ~/.bashrc |
你可以直接贴出:
你是在 编译、运行、还是安装库 的时候遇到问题?