brunch

You can make anything
by writing

C.S.Lewis

by 서준수 Apr 04. 2019

MinGW 설치하기

with gcc and git bash

빌드 과정에 대해서 공부하기 위해 MinGW와 gcc를 설치하였다. MinGW는 Windows에서 gcc를 사용할 수 있게 해주는 역할을 한다. 간단한 리눅스 명령어도 사용하기 위해서 git bash까지 설치하였다.


추가+) 64비트를 지원하는 MinGW-W64 설치 방법을 추가하였다. 추후 빌드 과정에 대한 실습은 MinGW-W64 기준으로 진행할 예정이다. MinGW와의 차이점은 아주 상세하게 정리된 블로그를 참조하기 바란다.


1. MinGW-W64 설치하기

설치 파일은 다음 사이트에서 받을 수 있다.

https://www.mingw-w64.org/downloads/


사이트에 접속해서 Sourceforge 링크를 누르면 다운로드 페이지로 이동한다. 잠시 기다리면 다운로드가 시작된다.



설치 진행은 next로 넘어가다가 다음 Settings 화면에서는 위와 같이 설정했다. Architecture는 사용하는 PC환경에 따라 설정하면 되는데, 앞서 말했듯이 64비트를 지원하는게 목표이기 때문에 Architecture는 x86_64를 선택했다. Threads는 호환성이 더 높은 posix로 선택했다. 해당 설정에 대해 자세히 알고 싶다면 여기를 보면 이해할 수 있다.


설치 완료 후에는 환경 변수를 등록해야 어떤 경로에서든 gcc를 사용할 수 있다.

기본적으로 다음 경로에 설치가 된다.

ex) C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin


단, 기존에 MinGW가 설치되어 있었다면 환경 변수 등록 시 반드시 기존 MinGW의 환경 변수보다 상위에 등록되어야 한다. 아니면 기존 MinGW가 우선적으로 인식된다.


환경 변수 추가 완료 후 다음과 같이 cmd창에서 gcc --version 명령어를 통해서 gcc 버전 확인이 가능하다. MinGW-W64 기반인지 꼭 확인한다.




2. MinGW 설치하기

다음 사이트에서 쉽게 설치가 가능한 파일을 받을 수 있다.

http://www.mingw.org/


접속하면 우측 상단의 Downloads 메뉴에 들어가서 mingw-get-setup.exe을 받아서 실행한다.

최초 화면에서 continue를 선택하고 아래 화면이 나오면 mingw32-base-bin과 mingw32-gcc-g++-bin을 선택하고 메뉴에서 Installation-Apply Changes를 선택하면 설치가 진행된다.



설치가 완료되면 cmd창을 통해 어떤 경로에서든 gcc를 사용할 수 있도록 환경 변수에 추가해준다.

환경 변수 중에서 Path 변수에 MinGW가 설치된 경로의 bin 폴더 경로를 추가해주면 된다.

ex) C:\MinGW\bin



환경 변수 추가를 완료했으면 다음과 같이 cmd창에서 gcc --version 명령어를 통해서 gcc 버전 확인이 가능하다.



정상적으로 버전 확인이 되었다면 gcc 설치가 완료된 것이다.

하지만 리눅스 명령어는 사용할 수 없다.



3. Git Bash 설치하기

리눅스 명령어를 사용하기 위해서 git bash를 다음 사이트를 통해서 설치한다.

https://gitforwindows.org/


디폴트로 모두 next 하여 설치를 완료한다.

MinGW 환경 변수 설정이 되어 있어서 곧바로 git bash에서 gcc 사용이 가능하다.




+추가) 그러나... hello world 출력 예제를 만들어서 빌드해보면 실행파일이 나오지 않는다.


#include <stdio.h>

int main() {

        printf("hello world!");

        return 0;

}


이렇게 단순한 코드다. 컴파일 에러가 발생하는 것도 아니다. 그냥 실행파일이 생기지 않는다.

원인을 몰라서 살짝 당황했지만 원인은 V3였다. 팝업 설정이 꺼져있던 V3가 설치된 PC가 아닌, 팝업 설정이 켜져 있는 V3 lite가 설치된 환경의 PC에서 실행하니 다음과 같이 악성코드로 인식하고 삭제하였다.



해결책으로 빌드하는 폴더 자체를 검사 예외 대상으로 설정하였다.


정상적으로 실행파일이 만들어지고 실행도 된다.


ref.)

MinGW와 MinGW-w64의 차이점 : http://klutzy.nanabi.org/blog/2015/03/05/mingw/

매거진의 이전글 C언어 빌드 과정 (build process)
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari