***************************************转载请注明出处: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. zookeeper监控告警

    一.ZooKeeper简介 ZooKeeper作为分布式系统中重要的组件,目前在业界使用越来越广泛,ZooKeeper的使用场景非常多,以下是几种典型的应用场景: l  数据发布与订阅(配置中心) l ...

  2. Sqlserver高级查询

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

  3. php设计模式之观察者模式

    观察者模式:能够更便利地创建查看目标对象状态的对象,并且提供与核心对象非耦合的指定功能性. 利用这种模式可以方便地创建一个对象(观察者),其可以用来“监视”另一个对象(被观察者)的状态.这样,就可以在 ...

  4. 20160128.CCPP体系详解(0007天)

    以下内容有所摘取,进行了某些整理和补充 论浮点数的存储原理:float浮点数与double浮点数的二进制存储原理–>阶码 浮点数转二进制 1.整数int类型和浮点数float类型都是占用4个字节 ...

  5. #1406 - Data too long for column (转)

    转自:(http://blog.sina.com.cn/s/blog_5115a74c01008e40.html) ERROR (): Data too long for column 解决方法 修改 ...

  6. Heritrix源码分析(四) 各个类说明(转)

    Heritrix的类的确很繁琐,往往继承了一层又一层,最多的继承好像有7层.下面就一个包一个包的说明每个类的作用,由于里面Heritrix组件分明,很多组件没用到的同时该组件的类我也没怎么接触,所以这 ...

  7. JNDI绑定数据库

    经过3个多小时的努力,配置JNDI数据源(主要是通过DBCP连接池)终于搞定- 还是Tomcat官方的说明好,不过全是英文的,大概还看得懂. 百度上那么花花绿绿的太多了,一个也没成功!... 本例使用 ...

  8. Python 获得命令行参数的方法

    如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么呢?需要模块:sys参数个数:len(sys.argv)脚本名:    sys.argv[0]参数1 ...

  9. 你能识别这些科技公司的真假logo吗?

    快告诉我,不止我一个眼瞎~

  10. (win+linux)双系统,删除linux系统的条件下,删除grub引导记录,恢复windows引导

    //(hdx,y) (显示查找到的分区号)第一个数字指第几个硬盘,第二个指第几个分区.   一般我们是(hd0,0) \n Linux的分区已经被你从Windows中删除,系统启动后停在“grub&g ...