This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Uses of Cygwin


On Jun 24, 2015, at 7:01 AM, Alvin Oo <defalcator@gmail.com> wrote:
> 
> 1) does it support ruby,python,c++,c, java?

The Cygwin package search engine answers questions like this:

   http://cygwin.com/cgi-bin2/package-grep.cgi

You can also search from within setup.exe on the package selection screen.

Cygwin has packages for all of the languages you mention, though the Java implementation is from GCC, not Oracle Java.

While you can run Java programs using Oracleâs JVM while under Cygwin, the interoperability between the two wonât be as good as if there were a ânativeâ Cygwin Java.  You may find that itâs better to run under GCJ if you need tight interaction with Cygwin executables.

> 2) What type of shell does it support? (sh,ksh)

The default Cygwin shell is Bash.

The rest of your question is even easier to answer from setup.exe: just open the Shells category on the Select Packages screen.

Some random observations:

- There is no rc/es, if youâre a Plan 9 refugee.

- scsh is only in the 32-bit version; no one has bothered to port it to 64-bit Cygwin yet.

- Cygwin only has one of the ksh clones, mksh.  No one has decided to adopt AT&T ksh yet.

> ,what can it emulate?

Iâm not sure what youâre asking.

If you can find Linux or BSD-compatible source code for an implementation of a shell you want to use, it can probably be made to build and run under Cygwin.

Cygwin doesnât do any kind of binary emulation.  Cygwin is just a user-space POSIX/Linux emulation layer that links to native Windows executables.

> Is it possible for cygwin to start in a certain folder, akin to when I 
> drop cmd.exe on a certain folder, or name powershell to start in a certain 
> folder it will open up, i need to navigate to directory fast

Cygwin executables are native Windows executables.  Windows facilities like the âStart inâ field of the GUI shortcut editor work just fine with Cygwin.

Cygwin itself lives in a certain directory, and builds a POSIX-like directory system underneath that, but Cygwin executables are not confined to that tree.

> 4) What are the alternatives to cygwin

SFU, the NT POSIX subsystem, and U/WIN all competed with Cygwin once upon a time, but theyâre now all basically dead.

The MinGW project provides a small subset of the packages in Cygwin.  They donât use the Cygwin POSIX layer, so they operate in a more ânativeâ Windows fashion, in that they take Windows file paths and such.  This has both advantages and disadvantages.  Basically, if youâre looking to do Linux-like things on Windows, you probably want Cygwin.  If you just want GCC on Windows, MinGW may suffice.

> what are the advantage and 
> disadvantage of cgywin?

Advantages:

- It implements most of the POSIX.1 and POSIX.2 interfaces, plus a lot of Linux-specific things like /proc/cpuinfo and /dev/dsp, which allows most of what you find on a typical Linux system to run on Windows, more or less seamlessly.

- It integrates with Windows about as well as itâs possible to given the current state of the art.

- It has a huge package repository [1] and a vibrant user community, and it is under active development.

Disadvantages:

- Being a POSIX layer for Windows, it has to be fairly thick where Windows semantics are incompatible.  Examples are fork(2), ACLs, and terminal I/O.  This can mean semantic mismatch and slow-downs relative to Linux running on the same hardware.


[1] http://stackoverflow.com/questions/21230657/

> 5) What are the most common uses of cgywin?

What are the most common uses of Windows and Linux? :)
--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]