“Ubuntu 下 C++ 运行报错”这个现象太宽泛了,需要看具体报错信息才能准确判断。不过,在 Ubuntu 上写/运行 C++ 程序,最常见的几类错误和原因如下,你可以对照看看是哪一种。
g++: command not found原因:没装编译器
解决:
sudo apt update
sudo apt install g++ build-essential
fatal error: xxx.h: No such file or directory原因:
示例:
#include <opencv2/opencv.hpp> // 没装 opencv
解决:
sudo apt install libopencv-dev
undefined reference to 'xxx'原因:链接阶段没加库
示例:
g++ main.cpp
如果用了 pthread、math:
g++ main.cpp -lpthread -lm
./a.out: Permission denied原因:没执行权限
解决:
chmod +x a.out
./a.out
Segmentation fault (core dumped)原因(非常常见):
delete 了两次scanf / cin 用错示例错误代码:
int *p = nullptr;
*p = 10; // 段错误
error while loading shared libraries原因:运行时找不到动态库
解决:
ldd ./a.out
export LD_LIBRARY_PATH=/path/to/lib:$LD_LIBRARY_PATH
auto x = 5;
错误:
error: ‘auto’ not allowed
解决:
g++ main.cpp -std=c++17
请把下面信息发出来:
例如:
g++ main.cpp
报错:
main.cpp:6:10: fatal error: iostream: No such file or directory
只要信息够具体,我可以直接告诉你是哪一行、为什么、怎么改 ✅