컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post [희소식] 비주얼 스튜디오 무료화 / Visual C++ 2005 Express 등등Cygwin 명령어 목록, 시그윈에서 사용 가능한 기본 명령 리스트[QnA] Cygwin(시그윈) 매뉴얼 있는 곳은?[C언어] 비주얼C/C++ 컴파일러(cl.exe)용, 환경 변수(Environment Va...[Java] 자바 매뉴얼(J2SE 5.0 Documentation) 다운로드, 'HTML ...[Java] 자바 런타임과 JDK(개발도구; 컴파일러) 파일 다운로드하는 곳은? / 자바의...현재 운영 중인 사이트들을, 딜리셔스(delicious)에 북마크해서 모았습니다[C언어] 이런 경고(Warning)가 나와요: Possibly incorrect assi...SkyMap (스카이맵): 천문학 소프트웨어, 밤하늘 별자리 보기 / 가상 천문 관측 - ...도스박스와 VMware 에서 도스 사용 때, CPU 사용량이 항상 100% 가 되므로 주의...

Cygwin(시그윈)이란? Cygwin의 장단점

Tuesday, July 04, 2006

Cygwin(시그윈)이란?



리눅스 프로그램/유틸리티를, MS윈도에서 사용할 수 있도록 하는 프로그램이 Cygwin(시그윈)입니다. 그러나 리눅스/유닉스용 바이너리 파일을 직접 실행시킬 수는 없고, 소스를 Cygwin용으로 포팅해야 합니다.

무료이고 오픈소스입니다. 지금은 레드햇(Red Hat)에 인수되었나 보더군요.

시그윈을 윈도에 설치하면 grep 이나 diff 등, 리눅스/유닉스의 유명한 명령어들을 거의 모두 사용할 수 있습니다. 리눅스를 설치하지 않고도 윈도우에서 리눅스를 쓸 수 있는 것입니다. 물론 진짜 리눅스와 완전히 같지는 않고 한계가 있습니다.



Cygwin의 한계


1.
Cygwin 은 리눅스처럼 보일 뿐이지, 어디까지나 윈도용 프로그램입니다. 따라서 리눅스용 프로그램을 시그윈에서 돌리기 위해서는, 소스를 시그윈에 맞게 수정한 후 컴파일해서, Win32 실행파일로, 즉 exe 파일로 만들어야 합니다.

좋은 소식: 그러나 시그윈은 리눅스 환경에 최대한 닮아 있기 때문에, 리눅스용 소스를 그리 많이 수정하지 않아도 윈도우에서 비교적 잘 실행이 됩니다. 만약 시그윈 없이, 리눅스용 C소스로 윈도우용 실행파일을 만들려면 상당히 어렵습니다. 리눅스와 윈도라는 OS에는 서로 이질적인 부분이 많기 때문입니다.

더 좋은 소식: 대부분의 리눅스용 프로그램들을 이미 시그윈용으로 컴파일해 두었기 때문에, 사용자가 직접 소스를 수정할 필요는 없을 것입니다.



2.
Cygwin용으로 컴파일된 exe파일은, 그 자체만으로는 실행이 되지 않고 반드시 cygwin1.dll 이라는 파일이 필요하다는 불편함이 있습니다. 그러나 요즘에 파일 하나로 실행되는 프로그램은 거의 없기 때문에 이것이 큰 단점은 되지 않는다고 봅니다.

또한 프로그램의 종류에 따라 다른 DLL 들을 요구할 수도 있습니다. 가령 less 명령을 구현하는 less.exe 파일은, pcre.dll 이라는 라이브러리 파일이 있어야 실행됩니다.

* Pcre: Perl-compatible regular-expression library

이것을 종속성(Dependency)이라고 하는데, 이것은 Cygwin뿐 아니라 리눅스나 윈도우의 대부분의 프로그램에 이런 종속성이 있습니다.



관련 게시물:

Cygwin (시그윈) 다운로드/설치법 [윈도우에 리눅스/유닉스 환경 만들기]

Cygwin (시그윈)에서, 사용 가능한 기본 명령어 목록

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top