***************************************转载请注明出处:http://blog.csdn.net/lttree********************************************

制作过cocos2d-x游戏的开发这都知道,

当所有东东都做完后,

最后一步,生成APK,

以前是用NDK等等一系列,很复杂东东来做,

3.0以后,可以直接在命令行 cocos compile 来制作。

简单了很多很多。

但是,依旧有东东需要手动,

比如Android.mk文件中 .cpp文件的填写,

我们要在这个文件中,把所有我们程序中用到的.cpp文件给添加进去。

如果文件少,还可以,但是文件一多,那就是非常 蛋疼 的事情。

这个,只需要三行就可以解决啦!

就是这么简单:

  1. LOCAL_PATH := $(call my-dir)
  2. include $(CLEAR_VARS)
  3. LOCAL_MODULE := cocos2dcpp_shared
  4. LOCAL_MODULE_FILENAME := libcocos2dcpp
  5. FILE_LIST := hellocpp/main.cpp
  6. FILE_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
  7. LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
  8. LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes
  9. LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
  10. LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
  11. LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
  12. include $(BUILD_SHARED_LIBRARY)
  13. $(call import-module,2d)
  14. $(call import-module,audio/android)
  15. $(call import-module,Box2D)

没错,就是中间这三行:

  1. FILE_LIST := hellocpp/main.cpp
  2. FILE_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
  3. LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)

恩,这样子以后,妈妈再也不用担心我们只做cocos游戏啦!

***************************************转载请注明出处:http://blog.csdn.net/lttree********************************************

Cocos2d-x 关于Android.mk 自动读入CPP的更多相关文章

  1. cocos2d Android.mk自动添加类

    打开Android.mk修改以下代码: LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Cla ...

  2. Cocos2d-x发布Android.mk 导入所有cpp

    #traverse all the directory and subdirectorydefine walk $(wildcard $(1)) $(foreach e, $(wildcard $(1 ...

  3. android.mk文件里的通配符

    比方你有如下目录,要编译Classes目录和Code目录下所有cpp src |-android.mk |-Classes |-A.cpp |-B.cpp |-....cpp |-Code |-E.c ...

  4. 做一个懒COCOS2D-X程序猿(一)停止手打所有cpp文件到android.mk

    前言:”懒”在这里当然不是贬义词,而是追求高效,拒绝重复劳动的代名词!做一个懒COCOS2D-X程序猿的系列文章将教会大家在工作中如何偷懒,文章篇幅大多较短,有的甚至只是几行代码,争取把懒发挥到极致! ...

  5. 自动添加需要编译的源文件Android.mk模板

    自动添加需要编译的源文件列表 添加第三方静态库.动态库的依赖   假设我们的项目依赖 libmath.a, libjson.a, libffmpeg.so 这几个第三方库文件,项目包含如下几个模块:a ...

  6. 避免修改Android.mk添加cpp文件路径

    手工输入项目需要编译的cpp文件到Android.mk里的缺点 1)繁琐,如果cpp文件很多,简直无法忍受 2)手工输入过程中容易出现错误 3)如果cpp文件更改名称,需要修改android.mk文件 ...

  7. Cocos2d-x 避免手工输入项目需要编译的cpp文件到Android.mk里

    手工输入项目需要编译的cpp文件到Android.mk里的缺点 1)繁琐,如果cpp文件很多,简直无法忍受 2)手工输入过程中容易出现错误 3)如果cpp文件更改名称,需要修改Android.mk文件 ...

  8. cocos2d-x 3.0 android mk文件 之 自己主动遍历*.cpp文件

    还记得上一篇android mk 文件的写法吗?传送门, 我们须要手动去加入 cpp文件.假设cpp一多,那不是要累死? LOCAL_PATH := $(call my-dir) include $( ...

  9. 一次搞定cocos2d-x的 Android.mk 文件

    cocos2d-x 打 android 包时要修改 Android.mk 文件,但每次修改很麻烦,如果源文件很多的话就坑死了,也可以写一个脚本来自动生成这个文件,但每次还要重新生成一下,将其修改下面的 ...

随机推荐

  1. HeadFirst jsp 02 (体系结构)

    当请求到来时, 必须有人实例化 servlet, 或者至少建立一个新的线程来处理这个请求. 必须有人调用 servlet 的 doPost()或 doGet()方法. 另外还的有人管理 servlet ...

  2. URAL1900 Brainwashing Device(dp)

    1900 二维dp挺好推 dp[i][j] = max(dp[i][j],dp[g][j-1]+o[i][i+1]-o[g][i+1])(i>g>=j-1) dp[i][j]表示第i个站台 ...

  3. android 启动第三方程序的代码

      //启动媒体库 Intent i = new Intent(); ComponentName comp = new ComponentName("com.android.camera&q ...

  4. Tyvj 1085 派对

    这道题和HDU 1016的素数环那道题很相似. 虽然1A了,但写代码的过程中还是丢三落四的. 贴完代码闪人,嘿嘿 //#define LOCAL #include <iostream> # ...

  5. 学会简单使用poi进行excel有关操作

    直接上代码: 官网上的抄的api例子: package com.test; import java.io.File; import java.io.FileInputStream; import ja ...

  6. init: sys_prop: permission denied uid:1003 name:service.bootanim.exit

    /************************************************************************* * init: sys_prop: permiss ...

  7. Sqlserver高级查询

    1.查询表结构 --查询表结构(字段名.字段类型.字段长度.能否为空) SELECT syscolumns.name,systypes.name, syscolumns.length ,syscolu ...

  8. ecshop lib包含lib文件

    在lbi文件中增加lbi方法 方法1. {include file='library/name.lbi '} 方法2. <?php echo $this->fetch('library/n ...

  9. 【转】iOS 开发之协议protocal-代理传值delegate

    原文网址:http://www.cnblogs.com/wzrong/p/3201938.html 刚开始做iOS开发的时候,对 protocol.delegate 的理解一直都是晕晕乎乎一知半解的状 ...

  10. 不可或缺的 sendEmail

    还在为Linux下没有便捷的邮件程序苦恼,还在为复杂的邮件服务器架设Google N多网页? 对于小型,便捷的Linux下命令行邮件程序,sendEmail使得这一切变得轻松可行.一起来看看吧. 一. ...