[Win32API] 라이브러리 구축하기 #2
2008/07/31 - [프로그래밍/Win32API/MFC] - [Win32API] 라이브러리 구축하기 #1
이전 포스팅에 이어서 설명합니다.
3. 정적링크 라이브러리 사용하기
역시 프로젝트를 하나 생성합니다.
그냥 빈 프로젝트를 만들어서 cpp 파일을 하나 생성해서 소스를 작성하면 됩니다.
저는 BlackOx.cpp 로 했습니다.
정적링크 라이브러리를 사용하기 위해서는 헤더파일(h)과 lib 파일이 필요합니다.
헤더파일에 함수가 선언되어 있고, lib 에 함수가 정의되어 있지요.
그래서 우리는 2번 과정에서 만든
BlackOx.h 파일과 프로젝트 빌드시에 생성된 lib 파일을 현재 프로젝트 폴더로 복사합니다.
복사한 모습입니다.
저는 2번 과정의 프로젝트명을 2_StaticLinkedLibrary 라고 했습니다.
그래서 2_StaticLinkedLibrary.lib 파일로 생성되었죠.
복사한 BlackOx.h 파일을 솔루션 탐색기에서 프로젝트의 기존 항목으로 추가시켜 줍니다.
이제 lib 파일을 현재 프로젝트에서 참조하여 사용하기 위해서는
추가 종속성을 걸어줘야 합니다. 이것은 두가지 방법이 있는데...
- 프로젝트 속성으로 들어갑니다.
[구성속성] - [링커] - [입력] 으로 들어가서 추가 종속성에 해당 lib 파일을 걸어줍니다.
이렇게 GUI 에서 하는 것 말고 코드에서 해결하는 방법도 있습니다.
- 전처리기 매크로를 사용합니다.
우리가 가져온 BlackOx.h 헤더파일 상단에
#pragma comment(lib, "2_StaticLinkedLibrary.lib")
이렇게 한 줄 넣어주면 종속성이 걸리면서 lib 파일을 참조할 수 있게 됩니다.
이제, 정적링크 라이브러리를 사용하기위한 모든 준비가 끝났습니다.
BlackOx.cpp 에 아래 코드를 작성합니다.
결과는... !
성공했습니다. 정적링크 라이브러리를 구축하고 사용하는 방법을 적어봤습니다. 생각보다 쉽죠 ~
참고로, 여기서 우리가 lib 파일을 참조할 때 복사해서 가져오는 식으로 했는데...
lib 파일이 있는 폴더를 참조하도록 하는 방법도 있습니다.
프로젝트 속성으로 들어가서
[구성 속성] - [C/C++] 으로 들어가서 추가 포함 디렉토리에 lib 파일이 있는 폴더를 걸어주면,
따로 lib 파일을 우리가 작업중인 프로젝트 폴더로 복사하는 일 없이 바로 참조하여 사용할 수 있습니다.
#pragma comment(lib, "2_StaticLinkedLibrary.lib")
물론 이렇게 종속성은 걸어줘야 하겠죠? ^^
이 방법외에도 프로젝트 종속성을 걸어주거나, 프로젝트 참조를 걸어주거나...
방법은 많은 것 같습니다.
다음 포스팅부터는 동적링크 라이브러리 DLL 을 구축하고 사용하는 방법을 설명합니다.
'프로그래밍 > Win32API/MFC' 카테고리의 다른 글
| [Win32API] 라이브러리 구축하기 #7 (전체소스 첨부) (0) | 2008/08/03 |
|---|---|
| [Win32API] 라이브러리 구축하기 #6 (2) | 2008/08/01 |
| [Win32API] 라이브러리 구축하기 #5 (0) | 2008/07/31 |
| [Win32API] 라이브러리 구축하기 #4 (0) | 2008/07/31 |
| [Win32API] 라이브러리 구축하기 #3 (1) | 2008/07/31 |
| [Win32API] 라이브러리 구축하기 #2 (0) | 2008/07/31 |
| [Win32API] 라이브러리 구축하기 #1 (0) | 2008/07/31 |
| [System] Stored Program Concept (0) | 2008/07/30 |
| [System] 프로그림 실행과정 (0) | 2008/07/30 |
| [System] 시스템 프로그래밍의 이해 (0) | 2008/07/30 |
| [MFC] MFC 클래스구조도 (0) | 2008/07/15 |



