[윈32 프로그래밍]이클립스와 Windows SDK 7으로 해보기

2023. 2. 25. 19:41프로그래밍

728x90

윈도우 프로그래밍을 해보는 것에 대한 많을 옵션들이 존재한다고 생각한다.

해본적은 없지만, Qt가 젤 유명 할 것 같고, 몇 몇 예제와윈도우를 돌려본 wxWidgets 도 유명할 것 같다. 그리고 SWT도 있고..언급한 것 중에 해 본 것이라고는 wxWidgets 밖에 없으므로 그냥 넘어가기로 한다.

 

그이외에도 여러 가지 UI를 구성할 수 있는 프레임워크들이 많이 존재 할 것으로 보인다.

 

다만, 자바에서도 스윙을 작성하는 것이 기본이듯이(물론 AWT가 먼저이기는 하지만javaFX 가 나왔으니…), 윈도우 프로그래밍도 윈32로작성하는 것이 우선이 아닐까 하는 생각에서 이 윈32 프로그래밍을 해보기로 맘 먹었다. 그러면 어떤 도구를 사용해서 해 볼 것인가? 라는 물음에 먼저 대답해야 겠지.

 

여러 번 해봤던 MinGW 환경+ 이클립스 환경도 고려를 해 보았으나, 그것보다는 우선 해보고 싶은 것이 실제 윈도우를만든 마이크로 소프트사가 내놓은 비쥬얼 스투디오 시리즈를 써서 작성하는 것이 먼저 일 것이다.

 

돈을주고 사서 쓰는 것이 전세계 경제 부흥을 위해서 도움이 될 것이기는 하지만, 사실 공짜로 뭘 해보고싶은 맘은 언제나 맘 속에서 불쑥불쑥 튀어나와서는 들어가질 않는다…

 

무슨 얘기를 이렇게 길게 쓰고 있는지 모르겠지만 그래서, 이클립스와 Windows SDK 7으로 윈32 프로그래밍을 해 보기로 한다.

단순하게 생각하면, 윈도우 SDK 라는 놈이 있으니 여기에다가 이클립스를 붙여보면 될 것 아닌가? 라는 생각이 들었다는 것이다. 이렇게해서 개발환경이 구성이 된다면 그 이후에 윈32 프로그래밍 하는 것은 오히려 쉬울 수도 있을 것이다.

 

하지만…뭐 Windows SDK를 설치하는 동안 MFC를 써야하나 말아야 하나의 고민으로 몇 기가의 하드 공간을 잡아 먹을 수 있을 것이다.

그럼 윈32 프로그래밍을 해보기 이전에 우선 환경을 만들어 보는 것을해보기로 한다.

 

  1. 윈도우 SDK 설치하기
  2. 이클립스 설정하기
  3. 테스트 C/C++ 코드 작성하기
  4. 컴파일/실행 하기

 

1. 윈도우 SDK 설치하기

이는 벌써 뭐 읽기는 힘들겠지만, 저번 글에 남겨 놓은 것이 있으니, 참고 하도록 한다.

 

 

윈도우 SDK와 커맨트 프롬프트를 이용한 C++ 프로젝트 컴파일하기

3분만 퀵하게 : 윈도우 SDK와 커맨트 프롬프트를 이용한 C++ 프로젝트 컴파일하기1   해보고...

blog.naver.com

 

2. 이클립스 설정하기

이클립스에 마이크로소프트 사의 환경을 설정하기 위해서는 하나를다운받아서 설치 해야 한다. Install New Software를 선택하고 나서

 

위의 설정을 해 준 다음 OK를누르면

비주얼 스투디오 환경에 맞는 환경을 잡을 수 있는 내용들이 설치 된다.

출처: https://www.eclipse.org/forums/index.php/t/1083878/

 

그리고 이 설정이 끝나고 코드를 작성하기에 앞서 사전작업이 필요하다. 우선, 윈도우 컴파일러인 cl.exe 파일이 어디에 존재하는 지 알 필요가있다. 뭐 그럼 윈도우 검색으로 찾아 보자

 

위와 같이 한 네 개정도 나온다. 그럼 이것 중에 어느 것이 맞는 컴파일러인가? 알고 싶다면

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_ia64
 

뭐 유력한 것이 몇 개 있기는 하지만, 이렇게 cpu 아키텍처를 알기 위해서는 (우선 내 컴터는 윈도우 7 64비트이다.)

일단 SDK에서 제공하는프롬프트 창을 열고서

 

다음 명령어의 실행으로 현재 cpuarchitecture를 알 수 있다.

~\Microsoft SDKs\Windows\v7.1>set process
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 61 Stepping 4, GenuineIntel
PROCESSOR_LEVEL=6
PROCESSOR_REVISION=3d04
 

그 이외에도 윈도우 SDK를사용해서 만들 수 있는 환경에 대해서 다음과 같은 명령어로 알 수가 있을 것이다.

~\Microsoft SDKs\Windows\v7.1>set lib
LIB=C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\Lib\amd64;C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib\X64;
LIBPATH=C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Windows\Microsoft.NET\Framework64\v3.5;C:\Windows\Microsoft.NET\Framework\v3.5;;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\Lib\amd64;

~\Microsoft SDKs\Windows\v7.1>set include
INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE;C:\Program Files\Microsoft SDKs\Windows\v7.1\INCLUDE;C:\Program Files\Microsoft SDKs\Windows\v7.1\INCLUDE\gl;

~\Microsoft SDKs\Windows\v7.1>set path
Path=C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Windows\Microsoft.NET\Framework64\v3.5;C:\Windows\Microsoft.NET\Framework\v3.5;;C:\Program Files (
x86)\Microsoft Visual Studio 10.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools;;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\Bin\amd64;C:\Program Files (x86)
\Microsoft Visual Studio 10.0\VC\Bin\VCPackages;;C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\NETFX 4.0 Tools\x64;C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64;C:\Program Files\Microsoft SD
Ks\Windows\v7.1\Bin;;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\SoftCamp\SDS;C:\Windows\SoftCamp\SDS\x64;C:\Windows\SoftCamp\SDK;C:\
Program Files (x86)\SlikSvn\bin;C:\Program Files\TortoiseSVN\bin;C:\Windows\SoftCamp\SDK\x64;C:\Python27;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft
Windows Performance Toolkit\;
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
 

 그럼 이런 배경 지식을 알았으니 실전에 들어가기로 한다. 

우선 새로운 프로젝트를 생성해보자. 다음과 같은 순서로 새로운 프로젝트를 생성해 준다.

 

 

 

 

 

 

3. 테스트 C/C++ 코드 작성하기

테스트 코드는 이클립스에서 추천해 주는 코드로..

//============================================================================
// Name : First.cpp
// Author : tommybee
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <iostream>
using namespace std;

int main() {
	cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
	return 0;
}
 

4. 컴파일/실행하기

이렇게 만들어 진 소스를 컴파일 해 보면 이상 없이 컴파일 될것이다.

 

이상없이 컴파일 되는 것은 윈도우 SDK를 제대로 설치해서 환경 설정 경로이 이미 반영 되었기 때문이 아니었나 하는 생각이 든다.

이 두 환경 설정에서 지금 환경처럼 제대로 라이브러리 경로 헤더경로 및 컴파일러 위치까지 나와 있다면 이상 없이 모든 것이 빌드 될 수 있을 것이라고 본다.

 

 

 

 

윈32 프로그래밍은시간 관계상 다음 여력이 되는 데로 해보는 것으로 한다.

 

▶ 참고로 위의 이클립스에서 쓰여진 테마는 darkest-dark-theme 마켓에서 찾으면 나온다.

이상.

728x90