반응형
- 정적 라이브러리 사용
Cocos2d-x엔진은 여타 대형 프로젝트와 같이 수천개의 코드파일로 구성되있다.
이런 코드파일을 통해 당신은 엔진 내부로직을 이해할수 있고 수정할수있다.
이것은 매우 가치있는 일이다.
돈의 가치가 아니라 시간,컴파일타임등의 더값진 가치를 가진다.
매번 코드가 바뀔떄마다 컴파일러는 엔진의 코드를 포함해서 모두 다시빌드한다.
하루에 여러번해야할수도 있는 컴파일을 하게되면 많은시간을 잡아먹게되고 오버헤드는 상당히 공포스럽다.
다행인것은 간단한 해결방법이 있다는것이다.
정적라이브러리를 사용해서 엔진의 모든코드를 독립적인 정적라이브러리 파일로 만드는것이다.
그다음 라이브러리를 프로젝트에 링크하여 사용하면 된다.
이렇게 하면 컴파일할때 엔진코드는 컴파일 되지 않아서 컴파일시간이 대폭 단축된다.
정적 라이브러리 생성
정적 라이브러리는 iOS, macOS, Android 및 Win32 플랫폼에서 사용할수 있다.
프로젝트에서 정적 라이브러리를 사용하기전에 먼저 정적라이브러리를 생성해야 한다.
Cocos 명령줄 도구를 설치완료했다고 가정하고 아래와 같이 한다.
# remove the 'prebuilt' folder
# without the -m flag, this builds for release mode
# generates libraries for every platform (ios, mac, android, win32)
cocos gen-libs -c
# remove the 'prebuilt' folder
# without the -m flag, this builds for release mode
# generates libraries for just ios
cocos gen-libs -c -p ios
# remove the 'prebuilt' folder
# without the -m flag, this builds for release mode
# generates libraries for just ios and android
cocos gen-libs -c -p ios -p android
# remove the 'prebuilt' folder
# with the -m flag, this builds for debug
# generates libraries for just ios and android
cocos gen-libs -c -p ios -m debug
정적 라이브러리를 빌드하는 과정은 하드웨어와 소프트웨어의 구성에 따라 몇분에서 몇시간까지 걸릴수도 있다.
빌드완료후 정적 라이브러리는 엔진의 루트 디렉토리의 prebuilt서브 디렉토리에 생성된다.
Cocos2d-x프로젝트에서 정적라이브러리를 이위치에 연결시키면 이 디렉터리 내의 있는 정적 라이브러리는 여러 프로젝트에서 사용할수 있다.
혹은 원하는대로 정적라이브러리를 복사하여 개개의 프로젝트에 넣어도 상관없다.
당신이 생각하기에 적합한 위치에 넣고 사용하라.
cocos gen-libs --help 를 실행하여 정적라이브러리를 실행하는 도움말을 봐보도록 하자.
정적 라이브러리 사용
프로젝트에 빌드된 정적 라이브러리를 사용하는것은 아주 간단하다.
그냥 프로젝트에 추가하면 된다.그리고 헤더 파일과 include파일을 탐색경로에 설정해주면 된다.
구체적인 경로는 당신의 개발환경에 따라 다르지만 꼭 추가해야할 경로는 아래와 같다.
헤더파일 탐색경로
# Project level
/path_to_cocos2d-x/cocos2d-x/
/path_to_cocos2d-x/cocos2d-x/cocos
/path_to_cocos2d-x/cocos2d-x/cocos/base /path_to_cocos2d-x/cocos2d-x/cocos/physics /path_to_cocos2d-x/cocos2d-x/cocos/math
/path_to_cocos2d-x/cocos2d-x/cocos/2d
/path_to_cocos2d-x/cocos2d-x/cocos/ui /path_to_cocos2d-x/cocos2d-x/cocos/network
/path_to_cocos2d-x/cocos2d-x/cocos/audio/include /path_to_cocos2d-x/cocos2d-x/cocos/editor-support /path_to_cocos2d-x/cocos2d-x/extensions
/path_to_cocos2d-x/cocos2d-x/external /path_to_cocos2d-x/cocos2d-x/external/chipmunk/include/chipmunk
# Target level
/path_to_cocos2d-x/cocos2d-x/cocos/platform/ios /path_to_cocos2d-x/cocos2d-x/cocos/platform/ios/Simulation
Include파일 탐색경로
/path_to_cocos2d-x/cocos2d-x/prebuilt/ios
/path_to_cocos2d-x 는 엔진의 루트디렉터리를 뜻한다.
출처: <http://cocos2d-x.org/docs/cocos2d-x/zh/editors_and_tools/prebuilt_libraries.html>
반응형
'Cocos2d-x v3.17 > 환경 및 도구' 카테고리의 다른 글
[Cocos2d-x 환경 및 도구]creator_to_cocos2dx 플러그인 (0) | 2018.08.11 |
---|---|
[Cocos2d-x 환경 및 도구]Cocos 명령줄 (0) | 2018.08.11 |
[Cocos2d-x 환경 및 도구]Cmake 가이드북 (0) | 2018.08.11 |
[Cocos2d-x 환경 및 도구]개발 환경 구축 - Windows 플랫폼 (0) | 2018.08.11 |
[Cocos2d-x 환경 및 도구]개발환경 구축 - Android 플랫폼 (0) | 2018.08.11 |