新手学cocos2dx,centos7下的安装过程
背景
打算学写游戏,新手向,当然从cocos2d-x开始.
看了cocos的文档,安装是针对ubuntu的,这里记录下centos7上安装、编译、运行测试的过程。
如果你已经有ubuntu,不推荐看此文.
kernal:
3.10.0-229.4.2.el7.x86_64
下载并解压cocos2d-x
unzip cocos2d-x-3.6.zip
安装依赖##
使用yum安装:
cmake.x86_64
gcc-c++.x86_64
mesa*
libXrandr-devel.x86_64
xorg-x11-apps.x86_64
xorg-x11-drv*
libXi-devel.x86_64
glew-devel.x86_64
libcurl-devel.x86_64
安装libglfw##
下载并解压:
curl -o glfw-3.0.4.tar.gz https://codeload.github.com/glfw/glfw/tar.gz/3.0.4
tar zxvf glfw-3.0.4.tar.gz
编译并安装:
cd glfw-3.0.4
mkdir build
cd build
cmake .. -DBUILD_SHARED_LIBS=ON -G "Unix Makefiles"
make
sudo make install
sudo ldconfig
编译cocos2d-x##
cd cocos2d-x-3.6/build
cmake ..
make
运行测试##
- cpp-empty-test
bin/cpp-empty-test/cpp-empty-test
如下图所示:
- cpp-tests
bin/cpp-tests/cpp-tests
如下图所示:
找不到libglfw.so的错误处理##
如果运行测试时出现如下错误:
bin/cpp-tests/cpp-tests: error while loading shared libraries: libglfw.so.3: cannot open shared object file: No such file or directory
确认是否libglfw.so库已加入缓存:
ldconfig -p | less
/libglfw.so
/* 没有找到,不在缓存中 */
找到libglfw.so.3的安装位置:
find / -name libglfw.so.3
/* 显示其路径如下 */
/usr/local/lib/libglfw.so.3
观察/etc/ld.so.conf:
cat /etc/ld.so.conf
/* 显示如下内容 */
include ld.so.conf.d/*.conf
在/etc/ld.so.conf.d文件夹下新建my-glfw.conf:
cd /etc/ld.so.conf.d
sudo vim my-glfw.conf
/* 添加如下内容 */
/usr/local/lib
运行ldconfig,更新缓存:
sudo ldconfig
检查libglfw.so是否加入缓存:
ldconfig -p | less
/libglfw.so
/* 显示如下内容 */
libglfw.so.3 (libc6,x86-64) => /usr/local/lib/libglfw.so.3
libglfw.so (libc6,x86-64) => /usr/local/lib/libglfw.so
再次运行cocos2d-x的test:
bin/cpp-empty-test/cpp-empty-test
如下图所示:
新手学cocos2dx,centos7下的安装过程的更多相关文章
- 19.CentOS7下PostgreSQL安装过程
CentOS7下PostgreSQL安装过程 装包 sudo yum install postgresql-server postgresql-contrib 说明: 这种方式直接明了,其他方法也可以 ...
- Linux(CentOS7)下Nginx安装
记录一下 Linux(CentOS7) 下 Nginx 安装过程 一.准备工作 版本说明: Linux版本:CentOS 7 64位 Nginx版本:nginx-1.20.0 1. 下载安装文件 采用 ...
- Linux(CentOS7)下rpm安装MySQL8.0.16
记录一下自己在 CentOS7 下 rpm 安装 MySQL8.0.16 的过程. 一.准备工作 1. 下载MySQL所需要的安装包 从 MySQL官网 下载,上传至 CentOS 系统 /usr/l ...
- Linux(CentOS7)下二进制安装MySQL5.7.26
记录一下自己在 CentOS7 下二进制安装 MySQL5.7.26 的过程,之前使用 Linux(CentOS7)下rpm安装MySQL8.0.16 之后发现 rpm 方式安装不利于维护,也不利于单 ...
- eclipse在Ubuntu 13.04下的安装过程
eclipse在Ubuntu 13.04下的安装过程及问题小记 一.eclipse安装过程 首先确保在安装eclipse之前已经安装好Java虚拟机 1. eclipse官网下载压缩包 下载地址:ht ...
- step_by_step_记录deepin下curl安装过程
记录 deepin 下 curl 安装过程 wget https://curl.haxx.se/download/curl-7.55.1.tar.gz .tar.gz cd curl-/ ./conf ...
- EnvironmentError: mysql_config not found问题解决(centos7下python安装mysql-python)
centos7下python安装mysql-python模块,执行命令: pip install mysql-python 出现报错:EnvironmentError: mysql_config no ...
- centos7下编译安装php-7.0.15(PHP-FPM)
centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...
- Centos7下快速安装Mongo3.2
Centos7下快速安装Mongo3.2 一般安装Mongo推荐源码安装,有时候为了快部署测试环境,或者仅仅是想装个mongo shell,这时候yum安装是最合适的方式, 下面介绍一下如何在Cent ...
随机推荐
- iOS 远程推送注册的小问题
iOS8有了新方法,用新方法后,用7.0版本运行会奔溃.只要加一句判断就ok: #ifdef __IPHONE_8_0 // 在 iOS 8 下注册苹果推送,申请推送权限. UIUserNotific ...
- 第8月第22天 python scrapy
1. cd /Users/temp/Downloads/LagouSpider-master ls ls ls lagou/settings.py cat lagou/settings.py ls p ...
- 问题:经典类的对象明明没有__class__属性,却可以调用。
这个问题得深入python源码才能看. class a: pass aa =a() print dir(aa)#aa只有doc和module属性 print aa.__class__#__main__ ...
- pip2和pip3冲突问题解决方法
python使用pip安装模块时报错:unable to create process using ' '的解决方法: 参考:http://qoogle.cn/?id=39 1.删除C:\Python ...
- nginx tomcat 自动部署python脚本【转】
#!/usr/bin/env python #--coding:utf8-- import sys,subprocess,os,datetime,paramiko,re local_path='/ho ...
- Linux字符集的查看及修改【转】
一·查看字符集字符集在系统中体现形式是一个环境变量,以CentOS6.5为例,其查看当前终端使用字符集的方式可以有以下几种方式: 1.[root@david ~]# echo $LANGzh_CN.G ...
- pop3设置
- pip 18.1: pipenv graph results in ImportError: cannot import name 'get_installed_distributions'
I'm currently using python3 -m pip install pip==10.0.1python3 -m pip install pipenv==2018.5.18 Once ...
- 小白学习安全测试(四)——扫描工具-Vega
WEB扫描工具-Vega 纯图形化界面,Java编写的开源web扫描器.两种工作模式:扫描模式和代理模式[主流扫描功能].用于爬站.处理表单,注入测试等.支持SSL:http://vega/ca.cr ...
- 关于NotificationListenerService监听时有失败的处理
关于NotificationListenerService监听时有失败的处理 问题由来 去年进入一家专业做智能穿戴设备的公司,在项目中需要监听系统通知栏变化(主要是IM类app的信息获取到后推送到用户 ...