Ubuntu14.04+eclipse下cocos2d-x3.6正式版环境的搭建

环境:
ubuntu14.04

adt-bundle-linux-x86_64
android-ndk-r9d-linux-x86_64
cocos2d-x-3.0正式版
apache-ant 1.9.3

python 2.7(ubuntu自带)
添加环境变量
export ANDROID_SDK_ROOT=/home/yangming/adt-bundle-linux/sdk
export PATH=${PATH}:/$ANDROID_SDK_ROOT/tools/
export PATH=${PATH}:/$ANDROID_SDK_ROOT/platform-tools/

export NDK_ROOT=/home/yangming/adt-bundle-linux/android-ndk-r9d
export PATH=${PATH}:/$NDK_ROOT

export ANT_ROOT=/opt/apache-ant-1.9.3
export PATH=${PATH}:/$ANT_ROOT/bin.
终端下运行build文件夹里的install-deps-linux.sh安装gcc等编译需要的环境,这里有硬性要求,gcc至少4.8,opengl至少1.5,低于标准可能编译不过去,编译过去也运行不了。

终端下运行setup.py,cocos new创建项目,这个各个平台应该都一样的。
得到如图所示目录

复制代码

  1. cd test/proj.linux/

进入linux工程目录,执行

复制代码

  1. cmake ..

生成makefile文件,如图

打开eclipse,导入proj.linux工程,选择C/C++,选择Existing Code as Makefile Project,选linux gcc

此时这个项目已经可以直接编译运行了,但是源码在目录外看不到,我们再来引入源码。

键单击工程->Properties->C/C++ General->Paths and Symbols->Source
Location->Link
Folder,依次导入工程目录里的Classes,Resources,cocos2d。cocos2d由于linux工程里有同名目录,可以改个名

现在工程应该是这个样子,打开一个文件,发现有很多错误,

看一下错误的原因,以这个Director为例,我们打开他的头文件,发现CC_DLL这个宏没有被识别

这个宏是在哪里定义呢,在各个平台各自的CCPlatformDefine.h里,


以看到,由于#if CC_TARGET_PLATFORM ==
CC_PLATFORM_LINUX没有成立,导致这个文件的内容全都无效,我们可以找一下CC_TARGET_PLATFORM,他在
/test.linux/cocos2dsrc/cocos/base/CCPlatformConfig.h,这文件里列出各个平台的编
号,CC_TARGET_PLATFORM先被设置为0,再在下面判断后重设,我们看到linux这行是灰色的,就是#if
defined(LINUX)没有成立,我们只需要在Paths and
Symbols里添加LINUX参数和CC_DLL,LINUX值为1,CC_DLL值为空,如图

如图,


须要把Managed Build Setting 置于 GCC Built-in Compiler
Settings之上,在Providers里先取消GCC Built-in Compiler Settings,点Apply应用,再选中GCC
Built-in Compiler Settings,再点Apply,回到Entries里,Managed Build Setting就跑到
GCC Built-in Compiler Settings上面了


好,现在AppDelegate.cpp已经不报错了,大部分文件都正常了,但还有一小部分还会报错,比如HelloWorldScene.cpp

MenuItemImage这个类报错,我们找到MenuItemImage.h,发现function这行报错,std::function是c++11特性,我们需要让cdt识别c++11特性。


到functional文件,这里的问题和上面的平台式识别问题类似,#if __cplusplus >=
201103L这个判断没有成立,__cplusplus这个值默认值是199711L,我们需要在Paths and
Symbols里添加__cplusplus=201103L,同时添加-std=c++11,如图
这里可以点Export Settings导出设置到xml,新工程导入就可以

好,现在整个工程都不报错了,代码提示也都可以正常使用。我们点小锤子build,开始编译了。其实这个工程生成完makefile文件后就可以正常编译,上面的报错只是eclipse cdt的设置问题,并不是真正的错误。

编译成功后,run as Local C/C++ Application,选MyGame,

成功!

自建类需要在CMakeLists.txt里添加,重新运行cmake,生成makefile才可以编译

复制代码

  1. set(GAME_SRC
  2. proj.linux/main.cpp
  3. Classes/AppDelegate.cpp
  4. Classes/HelloWorldScene.cpp
  5. )

android程序员,用惯了eclipse了,用vs各种不爽啊,发个教程,希望能壮大eclipse和linux使用者

还有一些莫名其妙的报错,如Return
has value, in function returning void, must implement the inherited
pure virtual method,Invalid arguments ‘ Candidates are: ,Member
declaration not found之类的,请更新CDT到最新版,我更新之后这些报错都消失了

时间: 2024-11-07 10:31:55

Ubuntu14.04+eclipse下cocos2d-x3.6正式版环境的搭建的相关文章

Ubuntu14.04+eclipse下cocos2d-x3.0正式版环境的搭建

环境: ubuntu14.04 adt-bundle-linux-x86_64 android-ndk-r9d-linux-x86_64 cocos2d-x-3.0正式版 apache-ant 1.9.3 python 2.7(ubuntu自带) 加入环境变量 export ANDROID_SDK_ROOT=/home/yangming/adt-bundle-linux/sdk export PATH=${PATH}:/$ANDROID_SDK_ROOT/tools/ export PATH=$

Ubuntu14.04 Kylin下 GO语言环境搭建

sudo apt-get install golang gccgo安装 gcc -v 查看 --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin 如果有一个go,说明你的gcc支持golang,那么就执行以下命令安装gcc-go(大家试一下这命令,我不敢确定): sudo apt-get install gccgo 设置系统环境变量 sudo gedit /etc/profile export

cocos2d-x 3.0正式版 环境搭建 (解决载入失败,未能载入XXX包)

cocos2d-x 3.0正式版最终公布了~ 等了好久~ 废话不多说,直接写方法. 1.下载安装vc2012 ,我用的是旗舰版,传送门:点击打开链接 2.下载cocos2d-x 3.0正式版,传送门:点击打开链接 3.下载安装python,传送门:点击打开链接 4.设置环境变量好后,打开cocos2d-x安装文件夹下build/cocos2d-win32.vc2012.sln,又一次生成解决方式就OK了. **假设出现了vc2012项目载入失败,提示未能载入XXXX包*,下载vc2012KB27

ubuntu14.04 LTS下Atlas2.2安装说明

准备工作 本文档是在ubuntu14.04下安装2.2版本的atlas. 官方文档很重要,请熟读. wiki地址:https://github.com/Qihoo360/Atlas/wiki QQ 群:326544838(可以加此群进行咨询) 1.所用软件: Ubuntu14.04 LTS版 2.使用服务器地址:192.168.1.244 3.ubuntu14.04对应的安装文件选择Atlas-2.2-debian7.0-x86_64.deb 4.主库为192.168.1.160,从库为192.

Ubuntu14.04系统下无法连接Wi-Fi无线网以及安装BCM43142网卡驱动的解决方案

1.问题描述 博主近日开始学习ROS,首先必装Linux操作系统,选择的是Ubuntu14.04,安装过程略过,直接讲问题.安装完系统之后发现一个重要问题,没法使用Wi-Fi,只能使用有线网络,而且网络连接列表中根本没有显示无线网,只有一个"有线连接1".问题描述完毕. 2.解决方案 简单却容易忽视的问题!博主原以为是网卡驱动,针对驱动研究了一整天,最后发现问题很简单:没有禁用secure boot(安全启动).如果确定自己的网卡驱动没有任何问题,那么可能只是需要在BIOS禁用安全启动

【转】Linux(ubuntu14.04)上编译Android4.4源码的环境搭建及编译全过程

原文网址:http://jileniao.net/linux-android-building.html sublime text让我伤心.本来很信任sublime text的自动保存功能,之前使用一直很给力的,但这次让我伤心欲绝啊. 关于Linux(ubuntu14.04)上编译Android源码的环境搭建详细过程都是在sublime text中编辑好的,无奈,这次的数据丢失让我不得不重新来回想手打一次了.可能很多细节问题,这次重新编辑文章时不会记得那么清晰了,还请有问题的朋友在下面留言给我就

Linux下Hadoop2.7.1集群环境的搭建(超详细版)

本文旨在提供最基本的,可以用于在生产环境进行Hadoop.HDFS分布式环境的搭建,对自己是个总结和整理,也能方便新人学习使用. 一.基础环境 在Linux上安装Hadoop之前,需要先安装两个程序: 1.1 安装说明 1. JDK 1.6或更高版本(本文所提到的安装的是jdk1.7); 2. SSH(安全外壳协议),推荐安装OpenSSH. 下面简述一下安装这两个程序的原因: 1. Hadoop是用Java开发的,Hadoop的编译及MapReduce的运行都需要使用JDK. 2. Hadoo

在ubuntu14.04 LTS下当完成lamp的安装后如何添加多个虚拟主机

当我们安装好lamp的环境后,我们通常使用localhost进行本地地址的访问,然而,当我们在实验的环境中,比如说,建立一个网站test.cn做实验时,这是我们就要用到虚拟主机了. 在这里我用到的php环境是lamp-server,操作系统为ubuntu 14.04 LTS. 在/etc/hosts下里添加这个127.0.0.1 food.cn 127.0.0.1    localhost127.0.1.1    wen127.0.0.1   test.cn    #添加自己的域名# The f

spark在eclipse下V2-搭建Demo代码阅读环境

https://files.cnblogs.com/files/wifi0/spark2.1.1example_api_sql_streaming_eclipseProject.ziphttps://files.cnblogs.com/files/wifi0/runconfig.zip 搭建代码阅读环境 下载spark-2.1.1-bin-hadoop2.7.tgz http://spark.apache.org/downloads.html 解压缩spark-2.1.1-bin-hadoop2