Windows에서 리눅스 명령어들을 사용할 때 많은 분들이 Cygwin 을 사용하실 겁니다.

 

Cygwin 을 사용하면서 처음에 가장 당황 스러운게 파일 또는 디렉터리의 경로가 어떻게 되는지 모르겠다는 겁니다.

 

첫번째로 기본 경로들에 대해 확인하기 위해서는 다음 그림과 같이 Cygwin 터미널에서 mount 라는 명령어를 사용해서 현재 Cygwin 과 Windows 폴더 사이의 매칭된 경로를 확인해야 합니다.

 

제 Windows 는 C,D,E,F 이렇게 네 개로 파티션이 구성되어 있는데~

 

각각이 /cygdrive/c, /cygdrive/d, /cygdrive/e, /cygdrive/f 마운트 되어 있는 것을 확인 있습니다.

 

또한 보통 C:/cygwin64/bin 이 Cygwin 에서 /usr/bin mount 되어 있는 것을 확인 있습니다.

 

Cygwin / (루트) 디렉터리는 Cygwin 설치되어 있는 폴더입니다. 경우는 C:/cygwin64 입니다.

 

이렇게 mount 관계를 확인 하는 방법도 있지만 Cygwin 에는 Cygwin과 Windows 간의 path 관계를 알려주는 cygpath 라는 툴이 존재합니다.

 

Cygwin 터미널에서 cygpath 라고 타이핑 하고 엔터를 치면 다음과 같이 cygpath 사용을 위한 옵션들이 나타납니다.


 

제가 자주 사용하는 몇 가지 옵션들에 대해서만 설명드리면~

 

-w 는 Windows path 를 –u 는 unix path 를 –a를 절대 경로를 의미합니다.

 

간단하게 몇 가지 변환 예를 들어보죠~

 

제 Windows 폴더 중에 C:\Users\Administrator\Downloads\cygwin 폴더가 Cygwin 에서는 어떻게 되는지 확인해 보죠~

 

다음과 같이 명령하면~ /cygdrive/c/Users/Administrator/Downloads/cygwin 폴더라는 것을 확인 할 수 있습니다.


cygpath.exe -u 'C:\Users\Administrator\Downloads\cygwin'

 

 

반대로 Cygwin 의 경로를 Windows 경로로 바꿔보죠~

 

제 홈 디렉터리에 있는 distribute_setup.py 라는 폴더의 Windows 경로를 확인해 보죠~ 절대 경로를 확인하기 위해~ a 옵션을 추가 했습니다.


cygpath.exe -wa ./distribute_setup.py

 



Cygwin 을 깔면~ 윈도우에서 리눅스 관련 명령어들을 이용할 수 있습니다.

 

아예 Virtual box 등을 통해 윈도우 내에 리눅스를 깔아서 사용하는 방법도 있지만 간단한 작업을 할 때는 Cygwin 정도가 제격이라는 생각이 들더군요~

 

공식 홈페이지는 아래와 같구~

http://www.cygwin.com/

 

아래 페이지에서 setup.exe 를 클릭하면 설치 파일이 다운로드 됩니다.

http://cygwin.com/install.html

 

설치 파일을 실행해서~ 다음 다음~ 누르다 보면 설치가 진행되는데~

 

설치 과정중에 아래와 같이 packages를 설정하는 부분에서 아래와 같이 gcc 로 찾기하면 아래와 같이 나옵니다.

 

devel 폴더가 개발과 관련한 설치 파일들이 있는 폴더 입니다.

 

여기서 설치하고자 하는 package 들을 선택합니다. Skip 이라고 된 부분을 클릭하면 버전이 바뀝니다. 전 첨에 이 간단한 걸 몰라서 어디 클릭해야 하는 건가 한참 찾음 ㅡㅡ;

 

아래와 같이 gcc 관련 package 들을 선택해주고

 

아래 그림처럼~ editor 로 사용할 vi 관련 package 들을 선택해 줍니다.

 

 

그리고 다음 ~ 다음~ 을 눌러서 Cygwin 설치를 마무리 합니다. 설치에 시간이 좀 걸리니깐~ 느긋이 커피 한잔 하면서 기다리시면 됩니다.

 

이제~ Cygwin 환경에서 간단하게 C 코딩을 해 보죠~

 

Cygwin 을 실행 시키고 일단 현재 폴더가 어딘지를 보려면~

 

다음과 같이 pwd 명령을 치면 됩니다.

 

위 그림의 \home\Administrator 폴더는 사실 윈도우의 C:\cygwin\home\Administrator폴더를 의미합니다.

 

즉~ C:\cygwin\home\Administrator 폴더가 cygwin 에서는 \home\Administrator 폴더로 마운트 되었다는 의미입니다.

 

그리고 위 그림처럼 gcc –version 이라는 명령어를 쳐서 gcc 가 제대로 깔렸는지 확인합니다.

 

이제 C 코딩을 해보죠~

 

아래 그림처럼 vim hello.c 라는 명령을 쳐서~ 다음과 같이 코딩합니다. ㅋㅋ 맞습니다. hello world입니다. ㅋㅋ

 

#include <stdio.h>

int main(void) {

printf("Hello world!!\n");

return 0;

}

 

아!! Vim 사용방법을 모르시는 분들은 그냥 메모장에다 위 코드 써서 C:\cygwin\home\Administrator\hello.c 로 저장해도 됩니다.

 

이제 다음과 같이 ~~

 

gcc 로 빌드해서 hello.exe 라는 실행 파일을 만들어주고~

 

gcc hello.c -o hello

 

아래 명령어로 실행을 시키면~

 

./hello.exe

 

Hellow world!! 가 실행 됩니다~

+ Recent posts