2006년 10월 30일
[퍼온글]VC6 Tip
VC6에서
1. 다른 프로젝트의 header file include하기
makefile에서 -I로 header file 넣는 거랑 같은 일이다.
하다보면 Cannot open include file: 'xxx.h': No such file or directory 이런거 많이 본다.
이때에는 상단메뉴의 Project-> Setting을 누르면 Project Settings 라는 dialog 뜬다.
여기서 왼쪽 화면에서 해당 프로젝트 선택하고 오른쪽화면의 탭중 c/C++ 선택한다.
그리고 바로 밑의 Category에서 Preprocessor를 선택한다.
그러면 아래의 입력창중 Additional include directories:를 볼 수 있다.
여기에 사용하고 싶은 header file 이 있는 directory를 넣어주면 된다.
2. S/W compile 옵션 넣기
S/W에서 사용하는 user defined option 넣기이다.
상단메뉴의 Project-> Setting을 누르면 Project Settings 라는 dialog 뜬다.
여기서 왼쪽 화면에서 해당 프로젝트 선택하고 오른쪽화면의 탭중 c/C++ 선택한다.
그리고 바로 밑의 Category에서 Preprocessor를 선택한다.
여기서 Preprocessor definitions에 원하는 Option을 주면 된다.
3. Library 추가하기
우선 1번의 header file을 알아먹게 해야 할것이다. 그 다음은
상단메뉴의 Project-> Setting을 누르면 Project Settings 라는 dialog 뜬다.
여기서 왼쪽 화면에서 해당 프로젝트 선택하고 오른쪽화면의 탭중 Link 선택한다.
Category 에서 Input을 선택한다.
여기서 Object/library modules에 원하는 lib를 적는다.
그 다음으로는 Additional libray path 에 위에서 입력한 lib가 있는 directory path를 입력한다.
4. MFC library 문제
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in xxx.lib(xxx.obj)
요런거 본적 있을 것이다. 이거는 현재 사용하고 있는 library에서 사용하고 있는 static한 무엇인가가 어디의 libray에 정의되어 있는 static한 무엇와 겹친다는 말이다.
요때에는 상단메뉴의 Project-> Setting을 누르면 Project Settings 라는 dialog 뜬다.
여기서 왼쪽 화면에서 해당 프로젝트 선택하고 오른쪽화면의 탭중 General을 선택한다.
그리고 Microsoft Founcation Classes:를 Use MFC in a Shared DLL로 선택해보자.
5. thread 문제
fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds <= 하다보면 요런 것도 보인다.
이거이 사용하는 library 중 mulit-thread library 가 있으니.. build option을 mulit-thread로 하라는 의미이다.
요럴때는 상단메뉴의 Project-> Setting을 누르면 Project Settings 라는 dialog 뜬다.
여기서 왼쪽 화면에서 해당 프로젝트 선택하고 오른쪽화면의 탭중 C/C++을 선택한다.
Category에서 Code Generation을 선택한다.
Use run-time library 를 Debug Multithreaded DLL을 선택하자.
# by | 2006/10/30 09:57 | 트랙백 | 덧글(0)