cocos compile

转自 : http://blog.csdn.net/wanglang3081/article/details/39692459

cocos compile

Overview

Build an existed project.

Usage

usage: cocos compile [-h] [-s SRC_DIR] [-q] [-p PLATFORM] [-m MODE] [-j JOBS]
                     [--ap ANDROID_PLATFORM] [--ndk-mode NDK_MODE]
                     [--source-map] [--sign-identity SIGN_ID] [--no-res]
                     [--compile-script {0,1}] [--lua-encrypt]
                     [--lua-encrypt-key LUA_ENCRYPT_KEY]
                     [--lua-encrypt-sign LUA_ENCRYPT_SIGN]

Available Arguments

Common Arguments

arg available value sample description necessary
-h,--help - - Show the help message and exit no
-s,--src project path ./projects/MyLuaGame Specify the project path. Default value is current directory. no
-p,--platform the target platform android Specify the target platform. yes
-m,--mode the compiling mode release Set the compile mode,should bedebugorrelease. Default is debug. no
-j,--jobs number of jobs at once 4 Use N jobs at once. It's only take effect with targetandroid&linux. no
-o,--output-dir absolute/relative path ./release/android Specify the output directory. no

Android Arguments

arg available value sample description necessary
--ap folder name inANDROID_SDK_ROOT/platforms android-16 Specify the API-Level of android sdk. Console will auto select it if not specified. no
--ndk-mode the compiling mode of ndk-build release Set the compile mode of ndk-build,should be one of {debug,release,none},native code will not be compiled when the value is none. Default is same value with-m no

Web Arguments

arg available value sample description necessary
--source-map - - Enable source-map no
--advanced - - Set thecompilationLevelvalue asadvancedfor js compiling. no

iOS/Mac Arguments

arg available value sample description necessary
-t,--target Target Name in XCode project MyGame iOS Specify the target name to compile. no

iOS Arguments

arg available value sample description necessary
--sign-identity the code sign identity "iPhone Distribution:xxxxxxxx" The code sign identity for iOS. It's required when the value of "-m,-mode" is release.

lua/js project Arguments

arg available value sample description necessary
--compile-script {0,1} 1 Disable/Enable the compiling of lua/js script files. If not specified,the value is1when-m,--modeisrelease. Otherwise,the value is0 no

lua project Arguments

arg available value sample description necessary
--lua-encrypt - - Enable the encrypting of lua scripts. It's only take effect when--compile-scriptvalue is1 no
--lua-encrypt-key any string MyLuaKey Specify the encrypt key for the encrypting of lua scripts. It's only take effect when--lua-encryptis enabled. Default value is2dxLua. no
--lua-encrypt-sign any string MyLuaSign Specify the encrypt sign for the encrypting of lua scripts. It's only take effect when--lua-encryptis enabled. Default value isXXTEA. no

Attentions

  • You can see the valid target platforms without specify-p,--platformfirst. The available platforms will be shown like this:
  • --compile-scriptwill not take effect when target islinuxorweb
  • If--lua-encryptis enabled,you should modify the C++ codeframeworks/runtime-src/Classes/AppDelegate.cpplike this:

    bool AppDelegate::applicationDidFinishLaunching()
    {
        ...
    
        auto engine = LuaEngine::getInstance();
        ScriptEngineManager::getInstance()->setScriptEngine(engine);
    
        // add these two lines 
        // "MyLuaKey" is the string specified by "--lua-encrypt-key"
        // "MyLuaSign" is the string specified by "--lua-encrypt-sign"
        LuaStack* stack = engine->getLuaStack();
        stack->setXXTEAKeyAndSign("MyLuaKey",strlen("MyLuaKey"),"MyLuaSign",strlen("MyLuaSign"));
    
        ...
    }
    

Samples

  • cocos compile -h. Show the help message.
  • cocos compile -s ./projects/MyLuaGame -p android --ndk-mode release --compile-script 1 --lua-encrypt
    BuildMyLuaGamefor android with ndk-build is release. And compile lua script files with encrypting.
  • cocos compile -s ./projects/MyLuaGame -p ios -m release --sign-identity "iPhone Distribution:xxxxxxxx"
    BuildMyLuaGamefor ios with release mode. Use the code sign identity"iPhone Distribution:xxxxxxxx".

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...