首先声明一下自己用的版本 vs2010   cocos2d-x_2.2    ndk_r9

1. 安装cygwin之后,也设置好了 ndk_root, 但是 cd $NDK_ROOT 进入不了,

只好修改了  build_native.sh  文件,如下

# paths
export NDK_ROOT=/cygdrive/d/android-ndk-r9 if [ -z "${NDK_ROOT+aaa}" ];then
echo "please define NDK_ROOT"
exit 1
fi

也可以修改template\multi-platform-cpp\proj.android\build_native.sh 这个模板文件,以后就不用每次都修改了

2. 现在能正常运行,但是不能完全编译,开始用的 ndk_r8 , 后来换成 ndk_r9 就 ok 了

3.执行 ./ build_native.sh 编译成功出现的标志

$ ./build_native.sh
NDK_ROOT = /cygdrive/d/android-ndk-r9
COCOS2DX_ROOT = /cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.android/../../..
APP_ROOT = /cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.android/..
APP_ANDROID_ROOT = /cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.android
Using prebuilt externals
Android NDK: WARNING: APP_PLATFORM android-9 is larger than android:minSdkVersion
Android NDK: WARNING:/cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.androi
Android NDK: WARNING: Unsupported source file extensions in jni/Android.mk 
Android NDK:   ../../Classes/resource.h
make: 进入目录“/cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.android”
Install : libgame.so => libs/armeabi/libgame.so
make: 离开目录“/cygdrive/e/cocos2d-x-2.2/projects/MoonWarriors/proj.android”

因为已经编译过,因此输出的log比较少,否则会很多

4  工程导入编译的时候eclipse会报错,Cocos2dxActivity,org.cocos2dx.lib.Cocos2dxActivity 也找不到

解决方法:复制 ***\cocos2dx\platform\android\java\src\ (***为cocos2d-x更目录) 到你android项目中的src文件夹中,这样就又有一个麻烦问题,是不是每次创建都要复制呢,答案当然是否定的,来看一劳永逸的方法,将src\org\cocos2dx\lib
中的lib文件拷贝到cocos2d-x-2.2\template\multi-platform-cpp\proj.android\src\org\cocos2dx  以后用命令创建的时候这些文件也会自动拷贝进去。
这是2.2的版本, 以前的版本和此不一样


tips: 如果能正常编译,proj.android 导入eclipse 中,就能编译 apk 文件

cocos2dx 跨平台编译遇到的几个问题的更多相关文章

  1. 在Windows/Ubuntu下安装OpenGL环境(GLUT/freeglut)与跨平台编译(mingw/g++)

    GLUT/freeglut 是什么? OpenGL 和它们有什么关系? OpenGL只是一个标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用.如果需要在程序里直接使用OpenGL, ...

  2. win下 golang 跨平台编译

    mac 下编译其他平台的执行文件方式请参看这篇文章,http://www.cnblogs.com/ghj1976/archive/2013/04/19/3030703.html  本篇文章是win下的 ...

  3. DELPHI跨平台编译开关

    DELPHI跨平台编译开关 DELPHI 现在是跨平台的开发工具,已经不仅仅针对WINDOWS OS. 跨平台的时候,一些WINDOWS特有的API或语法是不能用的,必须使用跨平台的新语法,要用编译开 ...

  4. linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'

    解决cocos2d-x中编译出现的一个小问题 对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如 ...

  5. 基于 maven 实现跨平台编译 protobuf 文件

    基于 maven 实现跨平台编译 protobuf 文件 mavne protobuf .proto  跨平台  需求 在团队协作中使用 protobuf 时, 有以下几点需求: protoc 跨平台 ...

  6. C++字符串常量跨平台编译问题

    C++字符串常量跨平台编译问题(与字符串编码相关),有需要的朋友可以参考下. 1. 问题 在C++代码中,给一个string类型的变量赋值一个中文字符串常量,例如: string s = " ...

  7. [原]详解如何将cocos2dx项目编译到Android平台上的(方式一:Cywin+NDK)

    链接地址:http://m.blog.csdn.net/blog/yhc13429826359/29357815 2014-6-8阅读578 评论0 前言:cocos2dx作为一个开源的移动2D游戏框 ...

  8. cocos2dx 安卓编译问题收集

    问题: 新的cocos2d-x 2.2.5 在使用Eclipse的安卓NDK 9 的编译器进行编译的时候,问题提示如下: [armeabi] Compile++ thumb: cocos_extens ...

  9. cocos2dx+lua编译Android项目

    一.简单介绍 cocos2dx版本号:3.2 二.问题及解决方式 1.为项目开启Native支持,把项目转为C++项目. 1>.项目开启C++ Native支持,操作例如以下图 watermar ...

随机推荐

  1. Android动态换肤(一、应用内置多套皮肤)

    动态换肤在很多android应用中都有使用,用户根据自己的喜好设置皮肤主题,可以增强用户使用应用的舒适度. Android换肤可以分为很多种,它们从使用方式,用户体验以及项目框架设计上体现了明显的差异 ...

  2. Mac下hosts文件配置

    工作中总会因为莫名其妙的原因,比如Mac下面打不开某网站,但是在windows 7下面却可以,此时只需两步即可完成在Mac下面上网.在Windows下面Win+R,输入cmd,进入命令行,将在wind ...

  3. android插件化之路

    概论  插件式开发通俗的讲就是把一个很大的app分成n多个比较小的app,其中有一个app是主app.基本上可以理解为让一个apk不安装也可以被运行.只不过这个运行是有很多限制的运行,所以才叫插件. ...

  4. Android 5.1 添加硬件抽象层(HAL)和JNI接口总结

    点击打开链接

  5. XMLTABLE

     XMLTABLE Syntax Description of the illustration xmltable.gif XMLnamespaces_clause::= Description ...

  6. iOS动画进阶 - 教你写 Slack 的 Loading 动画

    (转载自:http://blog.csdn.net/wang631106979/article/details/52473985) 如果移动端访问不佳,可以访问我的个人博客 前几天看了一篇关于动画的博 ...

  7. 【一天一道LeetCode】#136. Single Number

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given a ...

  8. Andriod Studio科普篇——3.关于gradle插件的常见问题

    1.andriod gradle插件版本过低. 出错位置: dependencies{ classpath 'com.android.tools.build:gradle:0.10.2' } 提示信息 ...

  9. How To: Run Tapestry5 On JBoss 6/7

    Tapestry 5.x cannot find the core pages and components from the URLs provided from classloaders in J ...

  10. Linux 共享内存 详解

    一.什么是共享内存区 共享内存区是最快的可用IPC形式.它允许多个不相关的进程去访问同一部分逻辑内存.如果需要在两个运行中的进程之间传输数据,共享内存将是一种效率极高的解决方案.一旦这样的内存区映射到 ...