我正在尝试在Ubuntu 12.04上运行Eclipse上的Hello world C ++。我安装了g ++并编写了这段代码:
#include<vector>
#include<string>
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World" << endl;
return 0;
}
编译输出:
**** Build of configuration Debug for project TopCoder ****
make all
make: Nothing to be done for `all'.
**** Build Finished ****
运行输出消息:
Launching TopCoder has encountered a problem
Error starting process
Error starting process.
Exec_tty error:Cannot run program "/media/01CCE00FA6888D80/Achieve/Eclipse/TopCoder/Debug/TopCoder": Unknown reason
Exec_tty error:Cannot run program "/media/01CCE00FA6888D80/Achieve/Eclipse/TopCoder/Debug/TopCoder": Unknown reason
Exec_tty error:Cannot run program "/media/01CCE00FA6888D80/Achieve/Eclipse/TopCoder/Debug/TopCoder": Unknown reason
当我将源代码放在ext4驱动器上时,它会构建并运行 我改变了
proc /proc proc nodev,noexec,nosuid 0 0
> / etc / fstab到
proc /proc proc dev,exec,suid 0 0
但没有用处。
答案 0 :(得分:4)
您要从/media/01CCE00FA6888D80
卷运行应用程序。可拆卸USB?最可能的罪魁祸首是noexec
作为默认安装命令行的选项。
使用以下命令检查noexec
是否是用于挂载文件系统的选项的一部分:
grep noexec /proc/mounts
如果这导致输出指示noexec
对文件系统有效,则尝试:
sudo mount -o remount,exec /media/01CCE00FA6888D80
此外,如果可移动卷是NTFS,您的milage可能会有所不同。
答案 1 :(得分:0)
尝试从命令行构建它。然后你会知道问题是与g ++还是eclipse有关。我猜你应该在eclipse的某个地方改变你的编译器路径,你确定你有eclipse-cdt吗?编译它的最简单方法是:
g ++ yourfile.cpp
答案 2 :(得分:0)
您的问题是您的工作空间可能与您安装ubuntu的驱动器位于不同的驱动器上
答案 3 :(得分:0)
您正在通过Linux运行项目。当我的项目在我的E盘中时,我遇到了同样的问题。我给了读 - 写权限,但对我来说还不够。当我试图运行项目时,同样的错误仍然存在。
我已将我的项目转移到我的主文件夹中,给予了许可并且项目已经运行!! 。
我认为LINUX C编译器的某些权限存在问题。