====== MinGW ======
* http://www.mingw.org/
> MinGW는 마이크로소프트 윈도로 포팅한 GNU 소프트웨어 도구 모음이다. mingw32로도 알려져 있다.
> MinGW는 윈도 API를 구현할 수 있는 헤더 파일들을 가지고 있으며 이로써 개발자들이 "자유롭게 쓸 수 있는" 컴파일러인 GCC를 사용할 수 있다. 시그윈 포팅을 사용할 경우 컴파일한 프로그램 결과물이 유닉스 계통의 기능을 가상으로 구현하는 런타임에 의존하는 반면, MinGW의 경우 이러한 기능에 의존하지 않고 마이크로소프트 윈도 기반 프로그램들을 만들 수 있다.
> 이 MinGW 프로젝트는 두 개의 기본 꾸러미를 관리하고 배포한다. 첫째로는 포팅된 GCC 컴파일러들은 윈도 명령 줄에서, 아니면 IDE에 통합된 채로 쓸 수 있다. 아니면 둘째로는 MSYS(minimal system의 약자)를 쓸 수도 있는데, 이것은 가벼운 유닉스 계통의 셸 환경을 제공한다. 이러한 환경은 rxvt와 autoconf 스크립트들을 실행하는 데에 충분한 POSIX 도구들이 집약되어 있다.
* [[cygwin|Cygwin]]이 Windows에서 구현한 Unix 가상 머신이라면 MinGW는 윈도우에 GNU 개발 환경을 포팅한 것 같은 것이다. MinGW가 성능은 더 좋으나 POSIX 환경을 완전히 구현하지는 못하고 있다.
===== MSys 설치 및 환경설정 =====
* 기본 MSys를 개선한 [[msys2|MSys2]]가 있다.
* [[http://www.mingw.org/|MinGW]] 홈페이지에서 설치 프로그램을 받아서 기본 MinGW/MSys 설치
* MinGW의 환경은 기본적으로 윈도우를 따른다. 즉, 기본 Encoding이 ''CP949''이다.
* [[mintty|mintty]] 설치하기
* ''C:\MinGW\bin\mingw-get install mintty'' -> ''C:\MinGW/msys/[Version]/bin/mintty.exe'' 설치됨
* ''mintty.exe /bin/bash --login'' 으로 바로가기 만들어서 실행하면 Bash 셸 환경 진입 가능해짐.
* 혹은 ''msys.bat --mintty''로 실행해도 된다.
* mintty의 옵션에서 글꼴 등의 기본 설정을 해준다.
* ''~/.inputrc'' 한글 환경(8bit)으로 변경
set meta-flag on
set convert-meta off
set output-meta on
set input-meta on
* ''~/.profile''
alias ls='ls -F --color=auto --show-control-chars'
# mingw를 PATH에 추가
export PATH=$PATH:/c/MinGW/bin
===== 참조 =====
* http://ko.wikipedia.org/wiki/MinGW
* [[http://blog.daum.net/-hedgeh0g/16|[UTIL] MINGW 시스템으로 PC 윈도즈에서 UNIX SHELL 을 사용하자]]
* [[http://badayak.com/entry/How-To-Install-MinGW|C언어 프로그래밍 과제를 위한 MinGW 설치 방법 :: 바다야크]]