본문 바로가기

별걸다하는 IT/개발환경 세팅&TIPS

윈도우에서 C/C++ 컴파일과 빌드를 위한 MSYS2 설치하기, MSYS2란 무엇인가?

반응형

안녕하세요 

양햄찌 블로그 주인장입니다. ㅎㅎ

 

저번에 이클립스 CDT 환경구성 포스팅에서 C/C++ 컴파일러인 MINGW를 설치하는 방법에 대해 알아보긴 했었는데요,

오늘은 VSCode에서 C/C++ 개발 목적으로 MSYS2를 설치해보려고 합니다. ㅎㅎ

 

목차

1. MSYS2는 무엇인가요

2. MSYS2 다운로드 및 설치

3. 터미널에서 업데이트 치기

4. 필요 유틸리티 다운로드 

5. 환경변수 세팅

6. 설치 확인

MSYS2는 뭔가요?

msys2 홈페이지: www.msys2.org

"MSYS2는 기본 Windows 소프트웨어를 구축, 설치 및 실행하기 위한 사용하기 쉬운 환경을 제공하는 도구 및 라이브러리 모음입니다. MSYS2의 주요 초점은 네이티브 Windows 소프트웨어에 대한 빌드 환경을 제공하는 것이며 Cygwin 사용 부품은 최소한으로 유지됩니다. MSYS2는 GCC, mingw-w64, CPython, CMake, 메슨, OpenSSL, FFmpeg, Rust, 루비, 루비에 대한 최신 네이티브 빌드를 제공합니다."

 

홈페이지에 아주 자세하게 잘 나와있습니다~!

요약하자면, MSYS2는 mingw와 cygwin에 기반을 둔 컴파일러/빌드 시스템이라는거죠. 업그레이드 버전이랄까.

어마무시한 용량을 잡아먹는 Cygwin사용이 최소화 되었다는 점, Makefile이나 설정에 필요한 환경 유틸리티를 여러개 같이 제공해준다는 점 등등.. 개발에 유용한 여러 가지 툴을 함께 제공하고 있습니다.

 

이클립스 CDT에서 컴파일러를 설치했을 때에는 이클립스라는 IDE가 있기 때문에 컴파일러만 필요하고 CMake나 빌드 같은 기타 유틸리티를 사용할 필요가 없었기 때문에 Mingw만 설치해 사용했었었죠.

컴파일러나 빌드 시스템이 내장되어 있는 IDE가 아닌 VScode에서 개발환경을 만들어주기 위한 용도로 오늘 MSYS2를 다운로드 받아 설치해볼거예요.

MSYS2 다운로드 및 설치

가장 최신 버전은 MSYS2 홈페이지에서 다운받아보실 수 있습니다. 제 포스팅 작성 날짜 기준 가장 최신 버전은 2021년 04월 19일 업데이트 된 파일이네요.

다운받아진 파일을 실행시켜줍시당

Next~! 클릭

설치를 원하는 위치를 지정한 후에 다음(Next)를 눌러주세요. 저는 D드라이브로 위치를 변경해줬는데,

변경하지 않는다면 기본 디폴트 저장 경로는 'C:\msys65'로 지정됩니다.

시작 메뉴에 넣을 것인지 물어보네요 ㅎㅎ 바탕화면도 아니고 시작메뉸데 뭐.. Next를 눌러줍시다.

고럼 요렇게 쭈루루룩 설치가 됩니다.

기본적인 설치는 다 끝났는데, mingw설치했을 때와는 다르게 msys2는 터미널창에다가 설치명령어를 쳐서 필요한 것들을 깔아줘야해요. 그러므로 msys2실행한다는 옵션을 클릭한 상태에서 Finish를 눌러줍시다.

고럼 요런 터미널 창이 자동으로 실행될거예요.

msys64 폴더
msys64 폴더에 생성된 여러 폴더와 파일들

실제 아까 경로로 설치해줬던 위치를 가보면 msys64 폴더 및에 여러 파일들이 생성된 것을 확인할 수 있습니다.

그런데 컴파일러 mingw64 디렉터리의 bin에 가보면 아무것도 없어요! 분명 mingw64도 포함되어 있다고 했는데..!

gcc도 cmd창에 쳐보면 인식을 하지 못합니다. 설치가 마저 안되어있어서 그래요. 

명령어로 설치를 진행해보도로 합시다.

터미널에서 pacman명령어로 마저 업데이트 

pacman은 패키지 매니저PACkage MANager)의 줄임말인 명령어로 MSYS2에서 설치는 모두 이 명령어로 이뤄집니다.

pacman -Syu

위 명령어를 쳐줍시당. 베이스 패키지들과 패키디 데이터베이스를 업데이트 해주는 명령어예요. 방금 설치를 해줬어도 해당 명령어를 쳐서 마저 다운로드를 해줘야 합니다.

중간에 Y/N를 물어보는게 나오는데 다 Yes누르면 됌~

 

:: To complete this update all MSYS2 processes including this terminal will be closed. Confirm to proceed [Y/n]

그럼 마지막에 업데이트를 위해서 터미널을 닫아야 하는데 닫아도 되겠느냐 라는 문구가 나옵니다.

Y를 누르면 터미널이 자동으로 닫힙니다. 남은 설치를 위해 다시 열어줘야해요.

시작 파일에서 검색해 'MSYS2 MSYS'를 실행시켜줍시다. 

똑같이 y. 이번에는 안꺼집니다. ㅎㅎ

그 다음에 pacman -Su를 쳐줍시다.

위처럼 나오면 MSYS를 사용하기 위한 기본적인 설치와 업데이트 완료입니다 ㅎㅎ

터미널에서 필요한 유틸리티 설치하기

이제 필요한 유틸리티들을 설치해봅시다.

 

■ pacman –S <패키지명>

패키지 설치하는 명령어

 

■ pacman –R <패키지명>

패키지 삭제하는 명령어

 

--needed 옵션

필요할때만 설치 - 이미 설치되어 있을 경우 설치하지 않고 설치되어 있지 않을 경우에만 설치

 

패키지 확인: Packages - MSYS2 Packages

 

Packages - MSYS2 Packages

 

packages.msys2.org

설치 가능한 패키지는 위 사이트에서 검색해보실 수 있습니다.

[mingw64 그룹패키지 설치] 

위 명령어를 쳐줍시다.

pacman -S --needed base-devel mingw-w64-x86_64-toolchain

저 toolchain은 패키지들을 그룹화 시킨건데 gcc, gdb, make 등이 기본적으로 내장되어 있습니다. 

걍 엔터치면 저기 있는거 다 다운받아지는거고 원하는 숫자들만 골라 입력하시면 선택한 것만 설치됩니다. 

저는 그냥 개인 데탑에 설치하는 것이니 엔터~

선택 질문이 나올 때마다 엔터나 y를 눌러줍시다.

msys2 설치 경로로 이동해보면, 아까 아무것도 없었던 mingw64/bin 폴더에 g++부터 gcc, gdb 까지 여러가지 파일들이 생성된 것을 알 수 있어요.

환경 변수 세팅

컴파일러를 사용하기 위해서는 환경변수에 PATH를 등록해주는 것까지 완료해야 마무리 됩니다.

시작에서 환경 변수만 검색하셔도 '시스템 환경 변수 편집'을 찾으실 수 있습니다.

고럼 요런 화면이 뜨는데 '고급'탭에서 하단의 '환경 변수(N)'을 클릭해주세요~

시스템변수의 Path를 찾아 편집해줍시다.

경로는 msys2 설치 위치 내, 다운받았던 컴파일러의 bin 폴더를 지정해줘야 합니다.

저의 경우 mingw64 패키지를 설치하였기 때문에 mingw65\bin으로 지정해줬어요. 

물론 설치위치는 사용자가 설치시 변경할 수 있기 때문에 다를 수 있습니다.

설치 확인

시작 검색에 cmd를 쳐서 커맨드 창을 열어주세요. 또는 '윈도우키+R'을 눌러서 위처럼 실행명령어로 cmd를 치셔도 됩니다.

gcc -v 
g++ -v
gdb -v

요런식으로 뒤에 -v를 붙이면 버전을 확인할 수 있습니다. 설치가 제대로 안됐을 경우에는 정보가 뜨지 않고, 명령어를 인식할 수 없다고 떠요.

잘 뜨네요~~ 그럼 설치 완료 끝~~
오늘 포스팅은 여기까지입니다. 도움이 되었다면 공감은 어떤가요? 오늘 하루도 고생하셨습니다~

반응형