뭔가를 하기 위해 이것 저것 스텝을 밟다보니까 여기까지 왔다. C++ 컴파일 작업이라는 걸 처음으로 하게 되었다. 어쩌다가 여기까지 왔나 웃기고 신기하기도 하지만 이번 기회에 컴파일이라는 것도 해보고 좋은 기회라고 생각한다.
필자는 윈도우10을 사용하고 있다. C++ 파일을 컴파일하는 이유는 아이러니하게도 디컴파일을 하기 위해서다. 정확히는 Decompyle++를 쓰기 위해서인데 pycdc.cpp를 컴파일해서 pycdc.exe로 만들어야 사용할 수 있겠다는 추측을 나름대로 했기 때문이다. C++를 컴파일하기 위해서는 G++가 필요하다고 한다. G++를 쓰기 위해서는 minGW가 필요하다고 한다. 그래서 G++ 컴파일을 위한 mingw(Minimalist GNU for Windows) 패키지를 구하기로 했다.
minGW는 설치 파일을 다운로드 받아 컴퓨터에 설치할 수 있는 모양이다. 그런데 윈도우10을 쓰고 있는 내 컴퓨터에서는 설치시 “this file has been downloaded incorrectly” 오류가 뜨면서 막히곤 했다. 알아보니까 이런 경우에는 설치 파일이 아닌 .zip파일을 구해야 한다. 정확한 순서는 바로 아래에 명료하게 정리해보겠다.
1. https://winlibs.com/에 접속해서 Zip archive를 다운로드한다.
2. 다운받은 .zip파일의 압축을 푼다.
3. 압축을 풀어서 나온 mingw64 폴더를 C:\Program Files\ 위치로 옮긴다.
4. 환경 변수를 C:\Program Files\mingw64\bin 로 설정해준다.
자세한 설명은 아래에 이어서!
나처럼 윈도우 10 유저라면, 설치 파일이 아닌 zip 아카이브를 다운 받아 직접 c드라이브에 넣어줘야 한다. Zip archive를 다운로드한다. https://winlibs.com/ 👈🏻링크로 이동해서 스크롤을 쭉~~ 내린 다음 뭔진 모르지만 가장 최신 버전에 posix threads라고 쓰여 있는 Win64 Zip archive를 다운받았다.
![g++ 컴파일을 위한 mingw-w64 패키지 설치하기 mingw 패키지 다운로드](https://rimu.work/wp-content/uploads/2023/06/mingw-패키지-다운로드.webp)
다운 받은 zip파일의 압축을 풀면, mingw64라는 폴더가 생성될 것이다. 이 폴더를 그대로 C드라이브의 Program Files 위치로 옮겨준다. 이때 관리자 권한이 필요하다는 팝업이 뜰텐데 허용해주면 된다.
![g++ 컴파일을 위한 mingw-w64 패키지 설치하기 mingw 파일 위치 이동](https://rimu.work/wp-content/uploads/2023/06/mingw-파일-위치-이동.webp)
이제 마지막 단계다. 환경 변수를 수정해주면 끝난다. 환경 변수 설정 방법은 간단하다. 윈도우 메뉴에서 ‘환경 변수’ 메뉴로 들어간다. 내 컴퓨터는 영어를 눈에 익히려는 목적으로 기본 언어가 영어로 설정되어 있어 ‘Edit Environment Variables’ 로 메뉴 이름이 나타났다.
![g++ 컴파일을 위한 mingw-w64 패키지 설치하기 환경 변수 편집](https://rimu.work/wp-content/uploads/2023/06/환경-변수-편집-947x1024.webp)
![g++ 컴파일을 위한 mingw-w64 패키지 설치하기 환경 변수 편집2](https://rimu.work/wp-content/uploads/2023/06/환경-변수-편집2.webp)
환경 변수 편집 메뉴에서 아래의 ‘시스템 변수’ 란의 Path를 선택한 다음 편집을 클릭한다. 그런 다음 새로운 경로를 추가해준다. 이때 경로는 C:\Program Files\mingw64\bin 이다. 경로를 추가했으면 확인 버튼을 누른다.
mingw64 설치가 이렇게 끝이 났다. g++나 gcc가 올바르게 설치되었는지 확인하기 위해서는 명령 프롬프트(터미널)에 아래 명령어를 입력하면 된다.
g++ --version
![g++ 컴파일을 위한 mingw-w64 패키지 설치하기 g버전 확인하기](https://rimu.work/wp-content/uploads/2023/06/g버전-확인하기.webp)
이렇게 g++혹은 gcc의 버전이 뜨면 정상적으로 설치된 것이다.
이제 이걸 이용해서 c++파일을 컴파일하면 decompyle++를 사용할 수 있겠지! 하지만 벌써 밤 11시… 넘 늦었으니까 다음 기회에~
글 더보기
아뿔싸! AWS 비용이 청구되었습니다(EC2 인스턴스 해지/삭제하기)
CSS 클래스 이름에 공백이 있을 때 이렇게 하세요
파이썬 f-string 오류 해결하기 ‘f-string: empty expression not allowed’
파이썬 모듈 import 실패할 때 간단한 해결 방법
cron expressions (크론 표현식) 초간단 정리
git push 안되는 문제 드디어 해결!