ubuntu下不用eclipse开发cocos2d-x(命令行)
之前在ubuntu下通过eclipse搭建开发cocos2d-x的环境,但是由于eclipse界面在ubuntu显得很丑,在里面写代码,完全没有感觉,后来我转到了win7上通过vs2010和eclipse共同开发cocos2dx的安卓项目,虽然成功了,但是eclipse是个吃软饭的角色,只负责编译一下,然后联机调试。网上也有人说可以搭建一下eclipse c++ 环境,但感觉很烦所。所以今天又回到ubuntu下搭建了一个不用eclipse的环境。
1.首先我们用 cocos2d-x-2.1.4/tools/project-creator/create_project.py 创建各个平台的工程。
create_project.py -project PROJECT_NAME -package PACKAGE_NAME -language PROGRAMING_LANGUAGE
参考
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./tools/project-creator$ python create_project.py -project HelloCxue -package org.cocos2dx.cxue -language cpp
proj.ios : Done!
proj.android : Done!
proj.win32 : Done!
proj.mac : Done!
proj.blackberry : Done!
proj.linux : Done!
proj.marmalade : Done!
New project has been created in this path: /home/charlesxue/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue
Have Fun!
2.这时会在cocos2d-x根目录下生成project文件夹,文件夹下有我们刚才创建的工程
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects$ ls
HelloCxue HelloWorld
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects$ cd HelloCxue/
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue$ ls
Classes proj.android proj.blackberry proj.ios proj.linux proj.mac proj.marmalade proj.win32 Resources
在工程下Classes 和 Resource 是各个平台的共有文件夹,所以我们可以在linux平台下开发把要添加的.h .cpp文件放到Classes文件夹下,想要生成安卓的程序,直接到proj.android编译即可。
3.更改Resources/font ,去掉之间的空格防止在安卓编译的时候出错。
4.在linux上编译工程,进行测试。
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.linux/bin$ ls
debug
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.linux/bin$ cd debug/
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.linux/bin/debug$ ls
HelloCxue
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.linux/bin/debug$ ./HelloCxue
cocos2d-x debug info [Ready for GLSL]
cocos2d-x debug info [Ready for OpenGL 2.0]
cocos2d-x debug info [
<dict>
cocos2d.x.version: .1rc0-x-2.1.
cocos2d.x.compiled_with_profiler: false
cocos2d.x.compiled_with_gl_state_cache: true
gl.vendor: X.Org
gl.renderer: Gallium 0.4 on AMD RV710
gl.version: 2.1 Mesa 9.0
gl.max_texture_size:
gl.max_texture_units:
gl.supports_PVRTC: false
gl.supports_NPOT: true
gl.supports_BGRA8888: false
gl.supports_discard_framebuffer: false
gl.supports_vertex_array_object: true
</dict>]
如图:
5.编译安卓依赖的c++库
./build_native.sh
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android$ ls
AndroidManifest.xml build_native.sh jni project.properties res
ant.properties build.xml proguard-project.txt README.md src
charlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android$ ./build_native.sh
NDK_ROOT = /home/charlesxue/setup/android_develop/android-ndk-r8e
COCOS2DX_ROOT = /home/charlesxue/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android/../../..
APP_ROOT = /home/charlesxue/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android/..
APP_ANDROID_ROOT = /home/charlesxue/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android
Using prebuilt externals
make: Entering directory `/home/charlesxue/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android'
Compile++ thumb : cocos2dcpp_shared <= main.cpp
6. 修改proj.android 下的project.properties 如下 根据自己情况修改 添加sdk.dir
如下:
target=android-
sdk.dir=/home/charlesxue/setup/android_develop/adt-bundle-linux-x86-/sdk
android.library.reference.=../../../cocos2dx/platform/android/java
7.安装 ant 。Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。
sudo apt-get install ant
8.执行
ant debug
9.编译成功后我们会发现 bin目路下多了很多文件。
rlesxue@THSHIBA:~/setup/cocos2d-x/cocos2d-x-2.1./projects/HelloCxue/proj.android/bin$ ls
AndroidManifest.xml classes dexedLibs HelloCxue-debug.apk proguard.txt
AndroidManifest.xml.d classes.dex HelloCxue.ap_ HelloCxue-debug-unaligned.apk res
build.prop classes.dex.d HelloCxue.ap_.d HelloCxue-debug-unaligned.apk.d R.txt
10.把 helloCxue-debug.apk 装载到手机。
adb install HelloCxue-debug
ubuntu下不用eclipse开发cocos2d-x(命令行)的更多相关文章
- 在ubuntu下设置eclipse开发STM32等嵌入式设备
之前为了能够让ROS与底层能够顺利通讯,我采用可开源开发板arduino ,因为arduino有ROS的库,能够按照ROS wiki上所给的教程就可以顺利的开发,但由于arduino的局限性,我觉得是 ...
- 在Ubuntu下利用Eclipse开发FFmpeg配置小结
首先需要编译FFmpeg得到头文件和lib文件,参见:在Ubuntu下编译FFmpeg 选择File-New-C Project 选择Executable下的Empty Project,右侧选择Lin ...
- ubuntu下matlab的无界面启动---命令行操作
命令行下运行 Matlab 及 函数 首先参考命令行下matlab的运行参数的定义与作用:http://www.cnblogs.com/beanocean/p/3677404.html 创建示例程序: ...
- 【转】在Ubuntu下建立Eclipse的Android开发环境
本文将介绍如何建立Ubuntu下基于Eclipse的Android开发环境的方法. 大部分的Android开发者都是使用Eclipse来开发Android,本文将向各位介绍一下建立Ubuntu下基于E ...
- ubuntu下整合eclipse和javah生成jni头文件开发android的native程序
0:前言: 这两天一直在研究用android的jni调用第三方库,上网搜方法,但是都是泛泛而谈,没有demo,经过我几番折磨,写了n多的helloword工程,总是不成功,工程名字也就由helloow ...
- 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)
. 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...
- ubuntu下安装stm32开发环境
在windowns下开发stm32刚开始学最烦的就是创建工程模板,都不知道为什么要那样设置,而且步骤繁多.现在我告诉大家一个好消息,在linux下配置stm32开发环境包括创建工程,使用JLink仿真 ...
- 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解
. 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...
- Ubuntu下的PHP开发环境架设
Ubuntu下的PHP开发环境架设 今天重新装了ubuntu那么就吧过程记录下. 打开终端,也就是命令提示符. 我们先来最小化组建安装,按照自己的需求一步一步装其他扩展.命令提示符输入如下命令: ...
随机推荐
- Kali Linux安装SSH Server
Kali Linux默认并没有安装SSH服务,为了实现远程登录Kali Linux,我们需要安装SSH服务. 安装 OpenSSH Server # apt-get install openssh-s ...
- 9.链表中倒数第k个结点[FindReverseKthLinkedListNode]
[题目] 输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: C++ Code 12345 struct ListNode { int ...
- rem第一天
Rem为单位 CSS3的出现,他同时引进了一些新的单位,包括我们今天所说的rem.在W3C官网上是这样描述rem的——“font size of the root element” .下面我们就一起来 ...
- 官方:MySQL 5.7 并行复制实现原理与调优 | InsideMySQL(转载)
MySQL 5.7并行复制时代 众所周知,MySQL的复制延迟是一直被诟病的问题之一,然而在Inside君之前的两篇博客中(1,2)中都已经提到了MySQL 5.7版本已经支持“真正”的并行复制功能, ...
- go set up on ubuntu
sudo apt-get install golang-go package main import ( "fmt" "runtime" ) func main ...
- 首次尝试LINUX下的ssh命令:登录和退出
1:我现在本机安装了centos虚拟机,然后在windows桌面下使用SecureCRT ssh客户端登录我的本地虚拟机,再然后 通过centos下的ssh命令登录局域网内测试机192.168.0.1 ...
- flash游戏服务器安全策略
在网页游戏开发中,绝大多数即时通信游戏采用flash+socket 模式来作为消息数据传递.在开发过程中大多数开发者在开发过程中本地没有问题,但是一旦部署到了网络,就存在连接上socket服务器.究 ...
- vim编辑器安装命令使用命令和设置的使用总结
vim编辑器的安装 vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.本文讲解主要是在Cento ...
- Spring源码学习之:ClassLoader学习(5)-自测
[一]测试目的(ClassLoader的作用) 1:测试涉及三个jar包,nonbankcard-configure-0.0.1-SNAPSHOT.jar,nonbankcard-persist-0. ...
- django保存一个object的时候会发出信号
当django保存一个object的时候会发出一系列的signals,可以通过对这些signals注册listener,从而相应的signal发出时执行一定的代码. from django.core. ...