如何在Cygwin中执行文件?

如何使用Cygwin shell执行a.exe

我在Windows上的Eclipse中创build了一个C文件,然后使用Cygwin导航到目录。 我在C源文件上调用了gcc,生成了a.exe 。 我想运行一个a.exe

./a.exe在提示符下

你应该可以通过input文件名来调用它。 您可能需要调用./a.exe,因为出于安全原因,当前目录通常不在path上。

只需在shell中input./a

要在当前目录中执行文件,使用的语法是: ./foo

正如allain提到的,./ ./a.exe是使用Cygwin在工作目录中执行a.exe的正确方法。

注意:您可能希望使用-o参数指定您自己的输出文件名。 一个例子是: cc helloworld.c -o helloworld.exe

托马斯写道:

显然,gcc并不像C编程语言中描述的那样

它一般。 对于在Windows上运行的程序,需要以.exe结尾,“C程序devise语言”并不是在Windows程序员的基础上编写的。 正如你所看到的,cygwin模拟POSIX环境的许多function,但不是全部。

在cygwin下的gcc不会生成一个types为“ELF 32位LSB可执行文件”的Linux可执行文件,但是它会生成一个依赖于cygwin1.dll的types为“MS Windows的PE32可执行文件”的Windows可执行文件,所以需要在cygwin shell下运行。 如果你需要在独立的dos提示符下运行它,他们需要将cygwin1.dll放在你的Windows PATH中。

-广告。

显然,gcc的行为不像“C语言”中描述的那样,它说cc命令生成一个名为a.out的文件,可以通过在提示符中inputa.out来运行。

Unix在默认情况下没有这样的行为(所以你可以在很长一段时间写下不带./的可执行文件名)。 它被称为a.exe,因为否则Windows不会执行它,因为它从扩展名获取文件types。

只要打电话吧

 > a 

确保它会被find(path)。

当你在Cygwin中启动时,你在“/ home / Administrator”区域,所以把你的a.exe文件放在那里。

然后在提示符下运行:

cd a.exe

它将被Cygwin读入,并且会被要求安装它。