树莓派3B+Geany环境下C++程序运行报错./main: not found求助
问题分析与解决
问题根源
你当前的构建命令存在参数错误:g++ -Wall -o "%e" "%f" -o test test.cpp 中重复使用了 -o 选项,GCC会以最后一个 -o 指定的输出文件为准,最终只生成了test可执行文件,而非你预期的main,因此运行./main时会提示文件未找到(错误码127通常表示找不到执行文件或缺少依赖)。
正确的编译与构建命令设置
编译命令(Compile)
编译单个源文件为目标文件,无需额外指定其他cpp文件,Geany的%f会自动指代当前编辑的文件:
g++ -Wall -c "%f"
你可以分别编译main.cpp和test.cpp,生成对应的main.o和test.o目标文件。
构建命令(Build)
将所有目标文件链接成可执行文件,指定输出为main:
g++ -Wall -o "%e" main.o test.o
或者直接一次性编译并链接所有源文件(更简洁):
g++ -Wall -o main main.cpp test.cpp
验证步骤
- 分别编译
main.cpp和test.cpp,确认目录下生成main.o和test.o - 执行构建命令生成
main可执行文件 - 运行
./main即可输出hello world
额外检查项
- 确认Geany的“执行”命令设置为
./%e,确保指向正确的可执行文件 - 若问题仍存在,可在终端执行
ls命令查看当前目录文件,确认main是否生成
内容的提问来源于stack exchange,提问作者Runsva
相关产品推荐
相关产品推荐

