How to make a program compile by Cygwin executable in Windows ?

A

Abby

I'm now using Cygwin as my compiler for C code. I use Dev-c++ as my
editor.
The reason why I chose Cygwin compiler instead of the compiler that
came with Dev-C++ is that I believe it uses the same environment as in
Linux, so that I don't have to write different sourcecode for both OS.
Eventhough, I don't understand about Linux much, and I'm still a
beginner in programming, I still have to make my program compatible
with both OS (Windows and Linux).

The thing is, I couldn't run my program in other Windows PC. It will
report that it need cygwin1.dll ... Anybody knows how to get through
this problem? Please, please, please ... let me know. Thank you.
 
A

Andy Zhang

Abby said:
I'm now using Cygwin as my compiler for C code. I use Dev-c++ as my
editor.
The reason why I chose Cygwin compiler instead of the compiler that
came with Dev-C++ is that I believe it uses the same environment as in
Linux, so that I don't have to write different sourcecode for both OS.
Eventhough, I don't understand about Linux much, and I'm still a
beginner in programming, I still have to make my program compatible
with both OS (Windows and Linux).

The thing is, I couldn't run my program in other Windows PC. It will
report that it need cygwin1.dll ... Anybody knows how to get through
this problem? Please, please, please ... let me know. Thank you.

Cygwin executables need the Cygwin library to, in a sense, convert unix
system calls to win32 API calls. You need to recompile the program for
Windows. Alternatively, you could distribute your program with the Cygwin
DLL.
 
A

Abby

Andy Zhang said:
Cygwin executables need the Cygwin library to, in a sense, convert unix
system calls to win32 API calls. You need to recompile the program for
Windows. Alternatively, you could distribute your program with the Cygwin
DLL.

Can you tell me how to distribute my program with Cygwin DLL? Thank you.
 
T

Tom St Denis

Abby said:
Can you tell me how to distribute my program with Cygwin DLL? Thank you.

Copy cygwin1.dll from the cygwin/bin dir. I dunno what the license is
regarding that though.

A good way to test if you have all the dlls you need is to set the path
to empty, e.g.

set PATH=

then run you app. If the additional dlls are required and they are not
in the dir where you run the app from windows will report an error.

Alternatively, you could compile as "-mno-cygwin" or use mingw if you
don't need the unix like behaviour.

Tom
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top