명령 줄에서 cocos2d-x를 쉽게 빌드하기위한 Makefile

소개



cocos2d-x를 빌드 할 때 iOS라면 xCode, Android라면 Eclipse입니까?
개발 중이라면 커맨드로 빨리 빌드하고 확인하는 것이 효율이 좋은 것도 있다고 생각합니다.
cocos 커맨드( cocos2d-console라고 한다)로 빌드할 수 있거나 합니다만, 자신의 경우 옵션을 기억하는 것이 귀찮았기 때문에 Makefile를 통해 빌드라든지 하고 있습니다.

Makefile 코드



cocos2d-x 프로젝트의 루트 디렉토리에 다음 코드를 복사하여 Makefile로 만들면됩니다.
REPO_ROOT      := $(shell pwd)
USERPLATFORM    = $(shell uname)
DEPLOY_DIR      = $(REPO_ROOT)/deploy

#
# set platforms
#
PLATFORMS = android
ifeq ($(USERPLATFORM), Linux)
PLATFORMS += linux
endif
ifeq ($(USERPLATFORM), Darwin)
PLATFORMS += ios
endif

# common
REMOVE=rm -fr
JOB=-j 8
MAKE=cocos

default: all
all: $(PLATFORMS)

define PLATFORM_RULES
.PHONY: $(1)
$(1):
    @$(MAKE) run -p $(1) $(JOB)
deploy_$(1): FORCE
    @$(MAKE) deploy -p $(1) $(JOB)
build_$(1): FORCE
    @$(MAKE) compile -p $(1) $(JOB)
endef
$(foreach a,$(PLATFORMS),$(eval $(call PLATFORM_RULES,$(a))))


distclean:
    @echo "##### clean cocos ####"
    $(REMOVE) bin
    $(REMOVE) cocos2d/build/build
    $(REMOVE) cocos2d/cocos/platform/android/java/bin
    $(REMOVE) cocos2d/cocos/platform/android/java/gen
    $(REMOVE) cocos2d/cocos/platform/android/java/local.properties

clean_android:
    @echo "##### clean android ####"
    $(REMOVE) proj.android/assets
    $(REMOVE) proj.android/bin
    $(REMOVE) proj.android/gen
    $(REMOVE) proj.android/libs/armeabi
    $(REMOVE) proj.android/libs/x86
    $(REMOVE) proj.android/local.properties
    $(REMOVE) proj.android/obj

clean_ios:
    @echo "##### clean ios ####"
    $(REMOVE) proj.ios_mac/build

clean_linux:
    @echo "##### clean linux ####"
    $(REMOVE) linux-build

.PHONY: all android clean clean_android clean_ios clean_linux distclean
FORCE:

by gist

Make 명령



쉽게 명령을 설명합니다.

안드로이드


  • 에뮬레이터의 경우 CPU 설정을 ADM으로 설정
  • 에뮬레이터의 경우 Use Host GPU에 확인
  • 앱을 설치할 때 기기에 연결해야 함
  • $ make android          # buildして接続しているデバイスにインストールする
    $ make build_android    # buildのみ
    $ make clean_android    # android関連をクリーン
    

    iOS


  • 에뮬레이터의 경우 자동으로 시작
  • $ make ios          # buildしてアプリケーションが実行される
    $ make build_ios    # buildのみ
    $ make clean_ios    # ios関連をクリーン
    

    리눅스


    $ make linux
    $ make build_linux
    $ make clean_linux
    

    distclean


  • cocos2d-x 라이브러리를 포함한 모든 항목이 삭제됨
  • 다시 빌드하는 데 시간이 오래 걸립니다
  • $ make distclean
    

    오시마



    디바이스 지정할 수 없고 clean 곳 왠지 잡잡해서, 그렇게 유연하지는 않습니다만, make 커멘드이므로 보완이라고 해 주고 편리하다고 생각합니다.

    실제로 자신은 iOS와 Android의 멀티 플랫폼 개발이지만 IDE는 xcode, android는 명령으로 각각 개발하고 있습니다. IDE를 전환할 필요가 없기 때문에 편합니다.

    그렇다고 해도 cocos2d-console , help를 보는 한 여러가지 할 수 있을 것 같습니다. 패키지 관리라도 할 수 있다고 한다. (h tp // w w. s에서 멋지다. 네 t/기기네 t/여기 s2d 안녕하세요)
    cocos2d-console 로 할 수 있는 것을 조사해 정리하고 싶네요^^;



    cocos2d-x를 처음부터 설정해보기



    처음 사용하는 사람을 위해 일단 절차를 써 둡니다. 거의 공식 희귀 D 째. MD 절차와 동일합니다.

    아래 준비



    ant install


  • Android 빌드를 위해 ant를 설치합니다. (이어서 wget도)
  • $ brew install ant wget
    

    다운로드 NDK


  • ndk가 필요하므로 다운로드 확장하고 모든 디렉토리에 넣습니다
  • # 権限変更
    $ chmod 755 ./android-ndk-r10e-darwin-x86_64.bin
    # 展開 (数分かかる場合あり)
    $ ./android-ndk-r10e-darwin-x86_64.bin
    

    ※ android studio를 사용하는 경우 ~/Library/Android/sdk/ndk-bundle에 있어야합니다.

    cocos2d-x 설정


    git clone 버전은 v3.10 (2016/01 현재 최신).
    $ git clone https://github.com/cocos2d/cocos2d-x.git
    $ cd ./cocos2d-x
    $ git checkout v3.10
    $ git submodule update --init
    
    download-deps.py에서 종속성을 해결하고 setup.py에서 환경 변수를 설정합니다. NDK의 위치를 ​​묻는 경우 앞에서 배포한 디렉터리를 입력하고 Enter합니다.
    $ python download-deps.py
    $ ./setup.py
    

    환경 설정 파일을 다시 읽습니다. (자신은 bash이므로 .bash_profile)
    $ source .bash_profile
    

    환경 설정 파일을 보면 다음과 같이 환경 변수가 설정되어 있어야합니다. (홈 디렉토리는 ~/로 대체되었습니다.)
    $ cat .bash_profile
        : # 略
    # Add environment variable COCOS_CONSOLE_ROOT for cocos2d-x
    export COCOS_CONSOLE_ROOT=~/cocos2d-x/tools/cocos2d-console/bin
    export PATH=$COCOS_CONSOLE_ROOT:$PATH
    
    # Add environment variable COCOS_X_ROOT for cocos2d-x
    export COCOS_X_ROOT=~/
    export PATH=$COCOS_X_ROOT:$PATH
    
    # Add environment variable COCOS_TEMPLATES_ROOT for cocos2d-x
    export COCOS_TEMPLATES_ROOT=~/cocos2d-x/templates
    export PATH=$COCOS_TEMPLATES_ROOT:$PATH
    
    # Add environment variable ANDROID_SDK_ROOT for cocos2d-x
    export ANDROID_SDK_ROOT=~/Library/Android/sdk
    export PATH=$ANDROID_SDK_ROOT:$PATH
    export PATH=$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH
    
    # Add environment variable NDK_ROOT for cocos2d-x
    export NDK_ROOT=~/Library/Android/sdk/ndk-bundle
    export PATH=$NDK_ROOT:$PATH
    
    # Add environment variable ANT_ROOT for cocos2d-x
    export ANT_ROOT=/usr/local/Cellar/ant/1.9.6/bin
    export PATH=$ANT_ROOT:$PATH
    

    프로젝트 생성 및 실행



    프로젝트 만들기
    $ cocos new MyGame -p com.example.mygame -l cpp
    

    위의 Makefile를 다운로드하십시오. (스스로 복사해도 좋다)
    $ cd ./MyGame
    $ https://gist.githubusercontent.com/caad1229/8b501cf214b62dd415fa/raw/3dc5b8136fe2d8de5446dded8394142805b9e60a/Makefile
    

    빌드하고 설치해 봅니다.
    (Android 에뮬레이터 또는 실제 기기를 연결하십시오)
    $ make android
    

    코코스 군 (멋대로 명명) 나왔습니까?



    실제로, c++ 부분만 확인하고 싶으면 build_native.py 두드려도 빌드만이라면 할 수 있습니다. 다양한 시도해보십시오!
    $ cd ./proj.android
    $ ./build_native.py
    

    좋은 웹페이지 즐겨찾기