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

本文详细介绍了如何在Ubuntu 14.04环境下配置Cocos2d-x 3.0进行游戏开发的过程,包括环境变量设置、依赖安装、Eclipse项目配置及常见错误解决方法。

环境:

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创建项目。这个各个平台应该都一样的。

得到如图所看到的文件夹

e2db001d9b6912828e3e754a1ad8c98d.png

cd test/proj.linux/进入linuxproject文件夹,执行

cmake ..生成makefile文件,如图

345b7172dae3ab06fd29b610c9ddf90f.png

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

45f6c939291cb0d01a2565658eba3970.png

3958d881df4af829792c075747672f29.png

此时这个项目已经能够直接编译执行了,可是源代码在文件夹外看不到,我们再来引入源代码。

右键单击project->Properties->C/C++ General->Paths and Symbols->Source Location->Link Folder,依次导入project文件夹里的Classes,Resources,cocos2d。cocos2d因为linuxproject里有同名文件夹。能够改个名

0b385eb40a0ed27fd530e5fe5fa97499.png

如今project应该是这个样子。打开一个文件,发现有非常多错误,

a064a6a3bffb750575561871548324b2.png

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

75e0be68839d0825ee962e06d0d46b3f.png

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

1d240eb1298f3b01749af2fc05976747.png

能够看到。因为

#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值为空,如图

60b7fdcaffe523b18b418570fe3e8fbc.png

如图。

2082cd6571a3303bc0058b3ba55078f0.png

必须要把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上面了

2f4510bdf638e527e6805f4052cb8229.png

cb1053764fcad284682aa61c8223b39c.png

好,如今AppDelegate.cpp已经不报错了。大部分文件都正常了,但另一小部分还会报错。比方HelloWorldScene.cpp

edb1e8541ff79ffb32d52d85cecf4c32.png

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

7b2baad352c38af0d4c9621d947c66ea.png

找到functional文件。这里的问题和上面的平台式识别问题相似。#if __cplusplus >= 201103L这个推断没有成立,__cplusplus这个值默认值是199711L,我们须要在Paths and Symbols里加入__cplusplus=201103L。同一时候加入-std=c++11,如图

这里能够点Export Settings导出设置到xml。新project导入就能够

0cf4f334e47f0f5286aec3e23db1f0fc.png

好。如今整个project都不报错了。代码提示也都能够正常使用。我们点小锤子build。開始编译了。事实上这个project生成完makefile文件后就能够正常编译,上面的报错仅仅是eclipse cdt的设置问题。并非真正的错误。

a3f7d5231c887b8f0a6518f167db98d6.png

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

e440faee56b43c85350f8a2d68ac8688.png

成功!

1194ecf031138f1e096e1b58d2df1534.png

自建类须要在CMakeLists.txt里加入。又一次执行cmake,生成makefile才干够编译

set(GAME_SRC

proj.linux/main.cpp

Classes/AppDelegate.cpp

Classes/HelloWorldScene.cpp

)

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

**项目名称:** 基于Vue.js与Spring Cloud架构的博客系统设计与开发——微服务分布式应用实践 **项目概述:** 本项目为计算机科学与技术专业本科毕业设计成果,旨在设计并实现一个采用前后端分离架构的现代化博客平台。系统前端基于Vue.js框架构建,提供响应式用户界面;后端采用Spring Cloud微服务架构,通过服务拆分、注册发现、配置中心及网关路由等技术,构建高可用、易扩展的分布式应用体系。项目重点探讨微服务模式下的系统设计、服务治理、数据一致性及部署运维等关键问题,体现了分布式系统在Web应用中的实践价值。 **技术架构:** 1. **前端技术栈:** Vue.js 2.x、Vue Router、Vuex、Element UI、Axios 2. **后端技术栈:** Spring Boot 2.x、Spring Cloud (Eureka/Nacos、Feign/OpenFeign、Ribbon、Hystrix、Zuul/Gateway、Config) 3. **数据存储:** MySQL 8.0(主数据存储)、Redis(缓存与会话管理) 4. **服务通信:** RESTful API、消息队列(可选RabbitMQ/Kafka) 5. **部署与运维:** Docker容器化、Jenkins持续集成、Nginx负载均衡 **核心功能模块:** - 用户管理:注册登录、权限控制、个人中心 - 文章管理:富文本编辑、分类标签、发布审核、评论互动 - 内容展示:首页推荐、分类检索、全文搜索、热门排行 - 系统管理:后台仪表盘、用户与内容监控、日志审计 - 微服务治理:服务健康检测、动态配置更新、熔断降级策略 **设计特点:** 1. **架构解耦:** 前后端完全分离,通过API网关统一接入,支持独立开发与部署。 2. **服务拆分:** 按业务域划分为用户服务、文章服务、评论服务、文件服务等独立微服务。 3. **高可用设计:** 采用服务注册发现机制,配合负载均衡与熔断器,提升系统容错能力。 4. **可扩展性:** 模块化设计支持横向扩展,配置中心实现运行时动态调整。 **项目成果:** 完成了一个具备完整博客功能、具备微服务典型特征的分布式系统原型,通过容器化部署验证了多服务协同运行的可行性,为云原生应用开发提供了实践参考。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值