如何在Cygwin中执行文件?

时间:2008-08-30 14:45:47

标签: c gcc cygwin

如何使用Cygwin shell执行a.exe

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

9 个答案:

答案 0 :(得分:73)

提示符下的

./ a.exe

答案 1 :(得分:10)

您应该只需输入文件名就可以调用它。您可能必须调用./a.exe,因为出于安全原因,当前目录通常不在路径上。

答案 2 :(得分:6)

只需在shell中键入./a

即可

答案 3 :(得分:2)

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

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

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

答案 4 :(得分:2)

托马斯写道:

  

显然,gcc的行为与C编程语言

中描述的行为不同

一般来说。为了让你的程序在Windows上运行它需要以.exe结尾,“C编程语言”并不是用Windows程序员编写的。正如您所见,cygwin模拟了POSIX环境的许多功能,但并非所有功能。

答案 5 :(得分:2)

cygwin下的gcc不会生成类型为“ELF 32位LSB可执行文件”的Linux可执行输出文件,但它会生成一个类型为“MS32的MS32可执行文件”的Windows可执行文件,它依赖于cygwin1.dll,所以它需要在cygwin shell下运行。如果你需要在dos提示符下独立运行它们,那么cygwin1.dll需要在你的Windows PATH中。

-AD。

答案 6 :(得分:1)

  

显然,gcc的行为与C编程语言中描述的不同,它说命令cc helloworld.c生成一个名为a.out的文件,可以通过在提示符下键入a.out来运行。

Unix在默认情况下没有以这种方式表现(所以你可以在很长一段时间内在前面没有./编写可执行文件名)。它被称为a.exe,因为Windows不会执行它,因为它从扩展名中获取文件类型。

答案 7 :(得分:-2)

只需称呼它

> a

确保找到它(路径)。

答案 8 :(得分:-5)

当你在Cygwin开始时,你在" / home / Administrator"区域,所以把你的a.exe文件放在那里。

然后在提示符下运行:

  

cd a.exe

将由Cygwin阅读,您将被要求安装它。