尝试编译文件时出现“没有此文件或目录” bash 错误

尝试编译文件时出现“没有此文件或目录” bash 错误

我已经查看过该网站上的许多类似的问题,但是当我尝试使用 ./conversion 运行我的程序 conversion.cpp 时,我仍然收到此错误。

该程序在这里:

(我好像无法复制粘贴文本)

每当我运行该程序时,都会出现错误,提示没有这样的文件或目录。我已经尝试过 chmod 但没有效果。

任何帮助都将不胜感激!

答案1

您必须将 .cpp 文件编译为二进制文件,chmod +x然后运行编译后的二进制文件。您可以使用以下语法轻松完成此操作:

g++ <cpp file> -o <resulting binary file>

例如,针对您的特定程序,以下内容:

g++ conversion.cpp -o conversion

例子:

mgodby@mg-ws1:~/code$ g++ helloworld.cpp -o helloworld
mgodby@mg-ws1:~/code$ ls
helloworld  helloworld.cpp
mgodby@mg-ws1:~/code$ chmod +x helloworld
mgodby@mg-ws1:~/code$ ./helloworld 
Hello World!
mgodby@mg-ws1:~/code$

注意 1:如果编译由于某种原因失败,请确保安装了所有必要的软件包 -

sudo apt-get -y install g++

注意2:每次对原始.cpp 文件进行更改时,都必须重新编译,即g++再次运行该命令,否则所做的更改将不会生效。


您无法直接运行 .cpp 文件的原因是 c++ 是一种“编译”语言,而不是“脚本”或“解释”语言。如果您想了解有关此特定区别的更多信息,可以参考以下文章来了解基础知识: 解释型语言 - 维基百科

相关内容