'2024/01'에 해당되는 글 1건

  1. 2024.01.01 [wxWidgets] Visual Studio와 wxWidgets 연동하기. 1

기본적으로 wxWidgets에선 minGW나 Cygwin을 연동해서 사용하는 것들이 대부분이였다.

하지만, Windows에서 제대로 컴파일이 안되거나 적용이 안되는 문제점이 있는 부분이 있어서 수정하기 위해 연동하는 방법을 기록하도록 한다.

 

VS(Visual Studio)와 wxWidgets과정은 다음과 같다.

1. VS 설치

2. wxWidgets 소스 설치

 

여기서 VS 설치는 간단하게 MS 사이트에서 제공해주는 프로그램을 다운받아서 설치하면 된다.

https://visualstudio.microsoft.com/ko/downloads/

이미지 썸네일 삭제
Visual Studio Tools 다운로드 - Windows, Mac, Linux용 무료 설치

Visual Studio IDE 또는 VS Code를 무료로 다운로드하세요. Windows 또는 Mac에서 Visual Studio Professional 또는 Enterprise Edition을 사용해 보세요.

visualstudio.microsoft.com

이 사이트에 들어가면, 다음과 같은 페이지로 넘어가게 되는데.

여기서, 커뮤니티 혹은 Professional을 다운 받으면된다.

여기서 커뮤니티를 사용하면, 로그인으로 계속 갱신하면서 30일 평가판을 계속 쓸 수 있기 때문에

커뮤니티를 다운받는걸 추천한다.

대표사진 삭제

사진 설명을 입력하세요.

여기서 VS와 연동해야되는 이유는 MS 컴파일러를 사용해야되는 경우가 있어서(라이브러리가 MS 컴파일러만 지원해준다거나 하는 문제점이 있다면, 그걸 못 쓰는 경우도 있다.) MS 컴파일러를 지원 가능하다면, VS를 굳이 쓸 필요가 없다.

 

wxWidgets는 다음과 같은 사이트에 들어가면, 간단하게 다운 받을 수 있다.

여기서 wxWidgets는 기본적으로 MinGW 기준으로 작성되어 있는게 많기 때문에 소스를 다운 받는게 좋다.

https://www.wxwidgets.org/downloads/

Downloads - wxWidgets

Downloads Not using C++? Get wxWidgets from the wxPython , wxPerl , or wxHaskell download sites. When installing wxWidgets on Windows or macOS, we always recommend building the library from source yourself, and only provide the source package for most platforms. On some platforms, we have provided a...

www.wxwidgets.org

 

wxWidgets에서 Source Code에서 Window Zip이나 WIndow 7z을 다운받은 후에 압축을 풀어준다.

 

VS 설치 완료하고, wxWidgets의 source code를 다운 받았다면, 다음과 같은 과정을 거친다.

 

VS을 킨 후에 도구 > 명령툴 > 개발자 PowerShell 을 클릭해서 Powershell을 킨다.

 

다음과 같은 명령어를 작성한다.

cd <wxWidgets's Path>\wxWidgets-3.2.4\build\msw

nmake /f makefile.vc BUILD=release SHARED=1 TARGET_CPU=X86
 

 

여기서 nmake가 MS에서 지원해주는 Make 프로그램이다.

 

 

이걸 완료되면,

wxWidgets에 압축을 푼 곳에서 lib 파일에 vs_dll(SHARED=1)이나 vs_lib(SHARED=0)의 폴더가 발생하고, 필요한 라이브러리들이 완성된다.

여기서 BUILD는 release와 debug로 나뉘어지고, 컴파일할때, 사용되는 라이브러리를 말한다.

디버깅을 제대로 사용할려면, debug을 사용하는게 가장 좋다.

SHARED는 1과 0으로 TRUE와 FALSE로 나뉜다.

TRUE가 되면, 동적 라이브러리인 DLL형식으로 빌딩이 되는것이고, FALSE가 되면, 정적 라이브러리인 LIB형태로 빌딩이 된다.

TARGET_CPU는 사용되는 컴파일러에 따라서 달라지는데.

내가 잘못 설정했는진 모르겠지만, x86(32bit)만 컴파일이 제대로 되서, 이렇게 사용한다.

 

빌딩이 잘 되었다면, VS에서 프로젝트 아무거나 적용한 후에

속성을 들어가면, 속성 페이지에서 변경된다.

VS++ 디렉토리에서 '포함 디렉터리'에서 수정하는데.

'$(wxWidgets)\include\msvc;$(wxWidgets)\include'을 추가하면, MSVC에 header 파일과 included될 wxWidgets의 라이브러리를 호출이 가능하다.

여기서 중요한건 $(wxWIdgets)을 설정해야되는데.

wxWidgets을 설정하는건 '내 컴퓨터' '내 PC'에서 오른쪽 버튼을 눌러서 속성에 들어가. '고급 시스템 설정'에 들어간다.

 

 

이렇게 wxWidgets라는 변수에 wxWidgets를 설치한 경로를 설정하면, 문제 없이 처리하게 된다.

Posted by JunkMam
,