노력과 삽질 퇴적물
오픈GL: VS2010&openGL 개발용설정 (for *.cpp) 본문
목표.
솔루션내 프로젝트들을 소스, 라이브러리, 문서등을 폴더별로 분할시킨다.
개발시 라이브러리나 기능추가가 편하게 프로젝트를 설정한다.
빌드나 소스등을 폴더별로 분산시켜서 멀티플랫폼 컴파일이 가능하게 한다.
1. 새 프로젝트
-> win32 콘솔응용 프로그램
-> 정적 라이브러리
2. 용도별 폴더 분산 및 정리
-> 비쥬얼 스튜디어를 잠시 종료한채로 폴더를 정리하고, 솔루션 폴더내 기본폴더, *.sln, .suo를 build폴더에 넣는다.
다음의 폴더구성은 절대적인것이 아닌 참고사항이다.
bin폴더 : 내부에 bin\Debug와 bin\Release로 구성.
bin\Debug\*.dll bin\Debug\*.lib
bin\Release\*.dll bin\Release\*.lib
컴파일된 모든 결과물(debug, release)과 실행시 필요한 구성들이 배치된다.
build폴더 : 비쥬얼스튜디오에 종속적인 복잡한 솔루션&프로젝트파일들이 배치된다.
dev폴더 : 테스트에 필요한 실습자료나 예제들을 모은다.
doc폴더 : 문서정리 모음폴더.
ref폴더 : 프로젝트에 필요한 텍스쳐, 외부 라이브러리 모음.
src폴더 : 실제적인 *.cpp이나 *.h등등.
src\HLF\Cores\Graphics
src\HLF\Cores\Math
-> 위의 선택한 4개를 build폴더로 옮긴다.
3. 프로젝트 구성과 설정, Cores
Cores : win32 콘솔응용, 정적 라이브러리인 프로젝트가 하위종속된다.
라이브러리 연계 및 사용을 위한 곳.
빌드까지만 시키는 프로젝트가 있는 폴더. 여기서는 솔루션폴더에 있던 기존의 프로젝트.
① 새 프로젝트 폴더
-> (솔루션)우클릭-속성-추가-새 프로젝트 폴더 만들기 : Cores와 Dev
-> (솔루션)우클릭-속성-추가-기존프로젝트. : build\(프로젝트명폴더)\ *.vcproj파일을 실행.
② 새 필터 & 새 항목
-> (프로젝트)우클릭-추가-새 필터 : Graphics
-> (프로젝트)우클릭-추가-새 항목 : RendererGL.h //위치를 src\(...)\Graphics쪽으로 지정.
-> 소스파일과 헤더파일에 있던 파일들을 위의 사진처럼 Cores폴더 바로 아래로 이동시킨다
③ 프로젝트 속성( 속성창 상단을 '모든 구성'인지 확인)
* 출력디렉토리
-> (프로젝트)속성-구성속성-일반-출력디렉토리
-> $(SolutionDir)../bin/$(Configuration)\ //참고로 2008은 $(SolutionDir)../bin/$(ConfigurationName)\
-> 프로젝트를 '빌드'만 해서 bin\Debug에 *lib가 생기는것을 확인. (release로 빌드시 bin\Release를 확인)
* 추가 포함 디렉토리 : 경로가 복잡한 소스파일등을 인클루드시 축약하는방법.
-> (프로젝트)속성-구성속성-일반-C/C++-일반-추가 포함 디렉토리
-> $(SolutionDir)../src/HLF; // 세미콜론(;) 까먹지 말것.
*라이브러리 추가.
-> (프로젝트)속성-구성속성-라이브러리 관리자-일반-추가 라이브러리 디렉토리 : $(SolutionDir)../bin/$(Configuration)\
-> (프로젝트)속성-구성속성-라이브러리 관리자-일반-추가종속성 : 추가_배포_라이브러리명.lib;opengl32.lib;glu32.lib;
-> (프로젝트)속성-구성속성-라이브러리 관리자-일반-추가종속성 : 추가_배포_라이브러리명.lib;opengl32.lib;glu32.lib;
4. 프로젝트 구성과 설정, Dev
Dev : win32 응용, Windows 응용프로그램인 프로젝트가 하위종속된다.
테스트용 응용폴더.
Dev 솔루션 폴더(우클릭)- 추가-win32응용프로그램-(마침)
-> 프로젝트속성-구성속성-일반-출력디렉토리
-> $(SolutionDir)../bin/$(Configuration)\
② 작업디렉토리
-> 프로젝트속성-구성속성-디버깅-작업디렉토리
-> $(SolutionDir)../bin/$(Configuration)\
③ 추가포함 디렉토리
-> 프로젝트속성-구성속성-(모든구성)-c/C++-일반-추가포함dir
-> $(SolutionDir)../src/HLF 로 지정.
④ 추가종속성
-> 프로젝트속성-구성속성-링커-입력-추가종속성
-> HLFGraphics.lib;⑤ 추가라이브러리
-> 프로젝트속성-구성속성-링커-일반-추가종속성
-> $(SolutionDir)../bin/$(Configuration)\
'📂기초 및 세팅 note > 2D & 3D' 카테고리의 다른 글
openGL과 DirectX의 좌표계 비교 (0) | 2011.10.12 |
---|---|
VS2010 & DX 기본설정 (1) | 2011.10.12 |
오픈GL: VS2008&openGL 기본설정 (for *.cpp) (0) | 2011.09.30 |
오픈GL: VS2008&openGL 기본설정 (for *.c) (0) | 2011.09.29 |
DX: VS2008 & DX설정 (0) | 2011.08.04 |