![在代码块中运行 C++ 程序时出现权限被拒绝错误消息](https://linux22.com/image/978598/%E5%9C%A8%E4%BB%A3%E7%A0%81%E5%9D%97%E4%B8%AD%E8%BF%90%E8%A1%8C%20C%2B%2B%20%E7%A8%8B%E5%BA%8F%E6%97%B6%E5%87%BA%E7%8E%B0%E6%9D%83%E9%99%90%E8%A2%AB%E6%8B%92%E7%BB%9D%E9%94%99%E8%AF%AF%E6%B6%88%E6%81%AF.png)
我从软件中心安装了 Code Blocks。我编写了一个 C++ 程序并构建了它,它运行正常,但每当我尝试运行编译后的代码时,它都会出现此错误:权限被拒绝。我该如何解决这个问题?
答案1
您需要执行权限才能运行/执行该文件。如果该文件是/home/user/test.cpp
,并且您是该文件的所有者,那么要执行该文件,您需要以下权限位:
-rwxr--r-- 1 user user 1490 Feb 13 12:07 /home/user/test.cpp
这里只有所有者(本例中为“用户”)可以读取、写入和执行该文件,而组(本例中为“用户”)和所有其他人只能读取该文件。
要像这样设置权限,请从终端运行以下命令:
sudo chmod 744 /home/user/test.cpp
如果您这样做,执行位将被设置,现在您将能够执行该文件。
答案2
检查您所创建的特定 c++ 文件的权限。如果ls
没有权限,则使用chmod
。
答案3
问题可能出在保存 c++ 文件的驱动器上。问题出现在 FAT32 中。格式化并将驱动器更改为 ext4,然后运行该程序。
另一个问题可能是 g++。使用以下命令安装 g++。
sudo apt install g++
答案4
尝试在终端中运行此命令:
chmod 755 filename.extension