47
How can I execute a.exe
using the Cygwin shell?
I created a C file in Eclipse on Windows and then used Cygwin to navigate to the directory. I called gcc on the C source file and a.exe
was produced. I would like to run a.exe
.
This question is tagged with
c
gcc
cygwin
~ Asked on 2008-08-30 14:45:47
77
./a.exe at the prompt
~ Answered on 2008-08-30 14:50:46
10
you should just be able to call it by typing in the file name. You may have to call ./a.exe as the current directory is usually not on the path for security reasons.
~ Answered on 2008-08-30 14:51:14
6
just type ./a in the shell
~ Answered on 2008-08-30 14:51:52
2
gcc under cygwin does not generate a Linux executable output file of type " ELF 32-bit LSB executable," but it generates a windows executable of type "PE32 executable for MS Windows" which has a dependency on cygwin1.dll, so it needs to be run under cygwin shell. If u need to run it under dos prompt independently, they cygwin1.dll needs to be in your Windows PATH.
-AD.
~ Answered on 2010-11-10 11:16:32
2
To execute a file in the current directory, the syntax to use is: ./foo
As mentioned by allain, ./a.exe
is the correct way to execute a.exe in the working directory using Cygwin.
Note: You may wish to use the -o
parameter to cc
to specify your own output filename. An example of this would be: cc helloworld.c -o helloworld.exe
.
~ Answered on 2008-08-30 14:58:19
2
Thomas wrote:
Apparently, gcc doesn't behave like the one described in The C Programming language
It does in general. For your program to run on Windows it needs to end in .exe, "the C Programming language" was not written with Windows programmers in mind. As you've seen, cygwin emulates many, but not all, features of a POSIX environment.
~ Answered on 2008-08-30 15:02:42
1
Apparently, gcc doesn't behave like the one described in The C Programming language, where it says that the command cc helloworld.c produces a file called a.out which can be run by typing a.out on the prompt.
A Unix hasn't behaved in that way by default (so you can just write the executable name without ./ at the front) in a long time. It's called a.exe, because else Windows won't execute it, as it gets file types from the extension.
~ Answered on 2008-08-30 15:08:31
-2
Just call it
> a
Make sure it will be found (path).
~ Answered on 2008-08-30 14:51:59
-5
When you start in Cygwin you are in the "/home/Administrator" zone, so put your a.exe file there.
Then at the prompt run:
cd a.exe
It will be read in by Cygwin and you will be asked to install it.
~ Answered on 2015-02-11 11:26:04