cocos2dx 用命令行进行编译的指令
cocos compile -p android -m release -s F:\cocosproj\antest --ap android-20
上面那条就是我常用的指令,这指令修改一下就成了你的指令了。
我本来是想用android-studio出个包的,但是这个编译指令只是编译eslicps的工程,不过没关系,编译出so文件后就可以手动搬到android-studio那里去出包了。
下面是 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 be debug or release . Default is debug. |
no |
-j, --jobs | number of jobs at once | 4 |
Use N jobs at once. It's only take effect with target android & 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 in ANDROID_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 the compilationLevel value as advanced for 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 is 1 when -m, --mode is release . Otherwise, the value is 0 |
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-script value is 1 |
no |
--lua-encrypt-key | any string | MyLuaKey |
Specify the encrypt key for the encrypting of lua scripts. It's only take effect when --lua-encrypt is enabled. Default value is 2dxLua . |
no |
--lua-encrypt-sign | any string | MyLuaSign |
Specify the encrypt sign for the encrypting of lua scripts. It's only take effect when --lua-encrypt is enabled. Default value is XXTEA . |
no |
Attentions
- You can see the valid target platforms without specify
-p, --platform
first. The available platforms will be shown like this: --compile-script
will not take effect when target islinux
orweb
If
--lua-encrypt
is enabled, you should modify the C++ codeframeworks/runtime-src/Classes/AppDelegate.cpp
like 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
BuildMyLuaGame
for 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"
BuildMyLuaGame
for ios with release mode. Use the code sign identity"iPhone Distribution:xxxxxxxx"
.
cocos2dx 用命令行进行编译的指令的更多相关文章
- VS2015——命令行下编译、静态库动态库制作以及断点调试
c程序编译流程 程序的基本流程如图: 1. 预处理 预处理相当于根据预处理指令组装新的C/C++程序.经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义同原本的 ...
- c# 命令行下编译c#文件 // c# file类读写文件
c# 命令行下编译c#文件 2010-03-01 15:02:14| 分类: c# 学习|字号 订阅 在 开始 ——>程序 ——>vstool中打开vs2008命令提示. 通过 ...
- [转]Windows中使用命令行方式编译打包Android项目
http://my.oschina.net/liux/blog/37875 网上很多用Ant来编译打包Android应用的文章,毕竟Ant是纯Java语言编写的,具有很好的跨平台性.今天想写个纯win ...
- Android系列之Android 命令行手动编译打包详解
Android 命令行手动编译打包过程图 [详细步骤]: 1使用aapt生成R.java类文件: 例: E:\androidDev\android-sdk-windows2.2\tools> ...
- Java带包结构调用命令行运行编译
原文: https://www.toutiao.com/i6491809562037846542/ 带包结构调用命令行运行编译. 记事本编写两个简单的类 文件结构目录 启动DOS,进入文件所在目录 分 ...
- delphi DCC32命令行方式编译delphi工程源码
本文链接地址:http://blog.csdn.net/sushengmiyan/article/details/10284879 作者:苏生米沿 Borland出品的Delphi,在TIOBE公布的 ...
- 【Java】【转】在命令行中编译和运行java
原文:http://blog.csdn.net/u010900574/article/details/50792353 同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到Li ...
- JNI之——在cmd命令行下编译执行C/C++源文件
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46604269 一直用java来敲代码,java配置好jre路径之后.在cmd下编译 ...
- 在linux命令行中编译和运行java文件
同时加载编译多个jar包和java文件 在个人平常使用或者当我们把代码部署到linux服务器上的时候,我们经常需要通过命令行编译和运行java文件,网上关于这个的方法大多是通过 javac -cp f ...
随机推荐
- E20180113-hm
round robin algorithm 轮询调度算法 circular adj. 圆形的; 环行的; 迂回的,绕行的; 供传阅的,流通的;
- bzoj 1702: [Usaco2007 Mar]Gold Balanced Lineup 平衡的队列【hash】
我%&&--&()&%????? 双模hashWA,unsigned long longAC,而且必须判断hash出来的数不能为0???? 我可能学了假的hash 这个 ...
- ZOJ-3960 What Kind of Friends Are You?
What Kind of Friends Are You? Time Limit: 1 Second Memory Limit: 65536 KB Japari Park is a larg ...
- 题解报告:hdu 1015 Safecracker
Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is locked in a Kl ...
- Java易忘知识点统计
缺少 内容 替代措施 幂运算 借助Math类的pow方法 注意 内容 备注 const Java保留关键字,未使用 其他 强制类型转换时,若要舍入得到最接近的整数,可以使用Math.round方法 J ...
- FTP初始化文件.netrc使用技巧[转发]
FTP初始化文件.netrc使用技巧 FTP(文件传输)和E-mail(电子邮件).Telnet(远程登录)一样,是 Internet的三大主要功能之一.因为使用频繁,用户往往会遇到各种 各样的问题, ...
- [Android]异常3-java.lang.NoClassDefFoundError: javax.activation.DataHandler
背景:JavaMail发送电子邮件 异常原因: 可能一>缺少DataHandler类相关jar包 可能二>有DataHandler类,DataHandler类与使用的mail.jar包不一 ...
- 关于百度地图导航AndroidSDK的初始化问题
使用百度地图有一段时间了,导航是一个一直困扰我的问题.今天刚发现百度地图的导航SDK并不是对Android6.0版本不兼容.而是对某一部分手机不兼容,准确的说是对X64或X86的cpu不兼容.下载百度 ...
- union与union all
union在合并A和B表的时候会先将B表中的数据与A表进行比较,若A表中已存在,则忽略. union all合并时则不比较,直接将A表与B表进行合并. 因此,若已知A与B不存在重复数据,那么union ...
- MERGE INTO USING用法
MERGE INTO [your table-name] [rename your table here] USING ( [write your query here] )[rename your ...