Kbengine游戏引擎-【1】kbengine安装
本文主要介绍如何在Linux上安装
官网环境要求:Centos >= 5.x, Debian >= 5.x GCC版本: >= 4.4.x
本文的安装环境介绍:Centos =6.9, GCC版本: = 4.4.7
Mysql =5.6 ,python =2.6 kbengine= v1.0.0
一.编译:
[root @ localhost ~]# yum install openssl-devel (在Ubuntu类系统上, 使用 "apt-get install libssl-dev")
[root @ localhost ~]# yum install mysql-server (在Ubuntu类系统上, 使用 "apt-get install mysql-server")
[root @ localhost ~]# yum install mysql-devel (在Ubuntu类系统上, 使用 "apt-get install libmysql-dev")
[root @ localhost ~]# yum install gcc+ gcc-c++(在Ubuntu类系统上, 使用 "apt-get install gcc
下载源码包:
root @ localhost ~]# wget -c https://github.com/kbengine/kbengine/archive/v1.0.0.zip
root @ localhost ~]# unzip v1.0.0.zip
[root @ localhost ~]# cd kbengine/kbe/src
[root @ localhost/ src]# chmod -R .
[root @ localhost/ src]# make
编译会因为服务器的性能有所不同,一般10多分钟左右
完成如图:或者输入echo $? 如果返回为0,编译成功
注意:
: 如果使用了其他版本的编译器最好重编译openssl、log4cxx与其他(kbengine/kbe/src/libs/*a.)。 2: mysql_config在某些操作系统版本上可能不是这个路径地址 /usr/bin/mysql_config 你可以手动修改kbengine/kbe/src/build/common.mak其中MYSQL_CONFIG_PATH=/usr/bin/mysql_config。 3: 在Linux上编译之后可能会出现Python解释器无法初始化而导致无法启动服务端的问题 (这是一个Python的bug,参看:http://bugs.python.org/issue11320): 你可以执行如下命令解决这个问题 [root @ localhost ~] cd kbengine/src/lib/python
[root @ localhost ~] ./configure
[root @ localhost ~] make
[root @ localhost ~] make install
注意事项
二.安装:
(注意:使用这种方式安装必须已经完成建立步骤)
在一个(Windows/Centos/Redhat/Debian/Ubuntu 等等)系统中安装KBEngine服务端, 请在命令行输入:
python kbengine/kbe/tools/server/install/installer.py instal
官方是有自动化的安装py脚本的, 不过还是有很多小坑的. (官方并没有写提前要建立数据库)
不过其实脚本主要也就是只做两件事, 其他都是可选的:
- 配置环境变量
- 安装配置mysql
2.1.数据库操作:
安装kbe之前请提前在mysql里
- 建一个数据库(比如建一个数据库kbe_database)
- 一个至少拥有select,insert,update,delete,create,drop权限的用户(比如这个用户是kbe_user)
数据库命令:先进入数据库
create database kbe_database; 创建数据库
grant all privileges on *.* to 'kbe'@'%' IDENTIFIED BY '' WITH GRANT OPTION;
grant all privileges on *.* to 'kbe'@'127.0.0.1' IDENTIFIED BY '' WITH GRANT OPTION;
flush privileges;
2.2.脚本安装
进入kbe的根目录
cd kbengine
python kbengine/kbe/tools/server/install/installer.py install
情况好的是上述这种没有错误的安装;
但有时是这样的
它就会问你 :
Install KBEngine to Linux-account(No input is kbe):kbe #请创建一个账号
not found system-user[kbe], create new user?: [yes|no]yes #是否创建
Please enter the Linux-account passwd(No input is kbe):123456 #输入密码 Check the dependences:
- kbe_environment: checking...
ERROR: KBE_ROOT: is error! The directory or file not found:
KBE_ROOT//kbe
KBE_ROOT= KBE_ROOT current: 现在的引擎根目录
reset KBE_ROOT(No input is [/kbengine/]): 敲回车
之后显示的都直接敲回车, 用默认的就可以, 直到他开始问你mysql的东西, 到mysql他会问
KBE_RES_PATH current: $KBE_ROOT/kbe/res/:$KBE_ROOT/assets/:$KBE_ROOT/assets/scripts/:$KBE_ROOT/assets/res/ #现在引擎的资源路径 和
用户脚本的资源路径
reset KBE_RES_PATH(No input is [$KBE_ROOT/kbe/res/:$KBE_ROOT/assets/:$KBE_ROOT/assets/scripts/:$KBE_ROOT/assets/res/]): 敲回车 KBE_BIN_PATH current: $KBE_ROOT/kbe/bin/server/ #引擎可执行文件所在目录。
reset KBE_BIN_PATH(No input is [$KBE_ROOT/kbe/bin/server/]): 敲回车 KBE_UID current: 0
备注:uid必须大于0, 小于32767.
os system-username(kbe):kbe
usermod -u [No input is 0] kbe, Enter new uid:
这是最重要的部分
- mysql: checking...
- MySQL is installed on the remote machine?[yes/no] 询问你本地还是远程
- Enter mysql ip-address:127.0.0.1
- Enter mysql ip-port:3306
- Enter mysql-account:kbe
- Enter mysql-password:123456
- Enter mysql-databaseName:kbe_database
- mysql: yes
Modified: /home/b/kbengine-0.9.18//kbe/res/server/kbengine_defs.xml
KBEngine has been successfully installed!
是否安装成功
找到你的kbe根目录, 然后进入根目录, 比如你的kbe根目录是kbengine, 则
- 进入kbe根目录下的assets目录 : cd kbengine/assets
- 运行启动脚本 : sh ./start_server.sh
(注意: 初次启动KBEngine时,mysql需要初始化一些表结构,可能会花上几分钟请耐心等待完成。)
用ps检查一下是否有以下进程再跑
[root@424439a6674e assets]# ps -ef | grep -v grep | grep -i kbe
root 5916 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//machine --cid=2129652375332859700 --gus=1
root 5917 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//logger --cid=1129653375331859700 --gus=2
root 5918 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//interfaces --cid=1129652375332859700 --gus=3
root 5919 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//dbmgr --cid=3129652375332859700 --gus=4
root 5920 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//baseappmgr --cid=4129652375332859700 --gus=5
root 5921 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//cellappmgr --cid=5129652375332859700 --gus=6
root 5922 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//baseapp --cid=6129652375332859700 --gus=7
root 5923 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//cellapp --cid=7129652375332859700 --gus=8
root 5924 0 0 05:42 pts/1 00:00:00 /kbengine/kbe/bin/server//loginapp --cid=8129652375332859700 --gus=9
检查我们mysql中的kbe_database数据库里是否多了几个表
mysql> show tables;
+---------------------------+
| Tables_in_b_test_database |
+---------------------------+
| kbe_accountinfos |
| kbe_email_verification |
| kbe_entitylog |
| kbe_serverlog |
| tbl_Account |
+---------------------------+
5 rows in set (0.00 sec)
待续
文章出处:
http://blog.csdn.net/nosix/article/details/77104859
Kbengine游戏引擎-【1】kbengine安装的更多相关文章
- Kbengine游戏引擎-【4】demo-kbengine_unity3d_demo 在容器docker上安装测试
git地址:https://github.com/kbengine/kbengine_unity3d_demo Demo中文地址:https://github.com/kbengine/kbengin ...
- Kbengine游戏引擎-【5】用Dockerfile打包镜像kbengine
本文是以docker为例,以ubuntu 16.04做基础镜像 kengine 1.0.0 用supervisor来管理启动 先放下目录结构图: kb--里面放的是kbengine的编译后的引擎以及d ...
- Kbengine游戏引擎-【2】kbengine引擎服务端目录结构分析
|- kbengine (KBE_ROOT 根目录) |- demo (游戏例子工程的根目录) |- res (工程的所有资源) |- spaces (通常存放游戏场景相关的资源,例如Navmesh) ...
- 从零开始学游戏开发(一):下载与安装UE4游戏引擎
如何下载和安装虚幻引擎 下载Epic Games Launcher 步骤 百度搜索"what is ue4" 点击第一个搜索结果,进入ue4官网 进入官网首页,点击右上角下载 创建 ...
- 山寨Unity3D?搜狐畅游的免费开源游戏引擎Genesis-3D
在CSDN上看到了<搜狐畅游发布3D游戏引擎Genesis-3D 基于MIT协议开源>(http://www.csdn.net/article/2013-11-21/2817585-cha ...
- 开源免费的HTML5游戏引擎
青瓷引擎的成长 青瓷引擎自2015年4月项目启动开始,7月首次亮相2015年ChinaJoy,便得到业界的极大关注,随后开启限量测试,收到数百个开发者团队的试用申请及反馈,期间经历了18个内测版本,完 ...
- Unity3D游戏开发初探—1.跨平台的游戏引擎让.NET程序员新生
一.Unity3D平台简介 Unity是由Unity Technologies开发的一个让轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的 ...
- 如何选择 H5 游戏引擎
原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场或将成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折.如何选择适合团队和项目的引擎,笔者通过学习和项目实 ...
- 避坑宝典:如何选择HTML5游戏引擎
原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折. 如何选择适合团队和项目的引擎,笔者通过学习和项目实践 ...
随机推荐
- 获取select的值
<!-- html --> <select id=''check> <option>北京</option> <option>北京</o ...
- [Abp vNext微服务实践] - 服务通讯
简介 服务通讯是微服务架构中必不可少的功能,服务通讯的效率决定了微服务架构的优略.常用的微服务通讯策略有两种,分别是rpc.http,其中rpc以gRpc框架为代表使用者最多.abp vNext微服务 ...
- org.apache.tomcat.util.descriptor.web.WebXml.setVersion Unknown version string [4.0]
错误: 在 IDEA 创建WEB项目之后,打印出的日志中总是出现一行警告信息: 12-May-2018 15:52:30.692 警告 [RMI TCP Connection(3)-127.0.0.1 ...
- 【收藏】linux快速查找文件的技巧
有时候,我们需要在系统中查找文件,Linux有一个非常优秀的搜寻系统. 一般提到搜寻文件的时候,很多人第一反应是find命令,但其实find不是常用的,因为速度慢,而且毁硬盘.一般我们都先用where ...
- 构建官方example
开发工具的选择: 构建官方example:
- BZOJ2208 [Jsoi2010]连通数[缩点/Floyd传递闭包+bitset优化]
显然并不能直接dfs,因为$m$会非常大,复杂度就是$O(mn)$: 这题有三种做法,都用到了bitset的优化.第二种算是一个意外的收获,之前没想到竟然还有这种神仙操作.. 方法一:缩点+DAG上b ...
- esxi克隆虚拟机
1.->选中虚拟机->导出(需要关闭虚拟机电源) 此时会下载下两个文件: 2.新建虚拟机 ->从OVF或OVA文件部署虚拟机 然后创建虚拟机,选择第二项 然后填入新虚拟机名称,并把下 ...
- MyBatis中的OGNL教程
MyBatis中的OGNL教程 有些人可能不知道MyBatis中使用了OGNL,有些人知道用到了OGNL却不知道在MyBatis中如何使用,本文就是讲如何在MyBatis中使用OGNL. 如果我们搜索 ...
- asyncio模块实现线程的嵌套和穿插
import asyncio import time now = lambda :time.time() async def cpc_1(x): print('正在烙比萨饼,预计{}分钟'.forma ...
- Map遍历效率 : entrySet > keySet
1 //entrySet() 2 for (Entry<String, String> entry : map.entrySet()) { 3 Stri ...