本文主要介绍如何在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, 则

      1. 进入kbe根目录下的assets目录 : cd kbengine/assets
      2. 运行启动脚本 : 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安装的更多相关文章

  1. Kbengine游戏引擎-【4】demo-kbengine_unity3d_demo 在容器docker上安装测试

    git地址:https://github.com/kbengine/kbengine_unity3d_demo Demo中文地址:https://github.com/kbengine/kbengin ...

  2. Kbengine游戏引擎-【5】用Dockerfile打包镜像kbengine

    本文是以docker为例,以ubuntu 16.04做基础镜像 kengine 1.0.0 用supervisor来管理启动 先放下目录结构图: kb--里面放的是kbengine的编译后的引擎以及d ...

  3. Kbengine游戏引擎-【2】kbengine引擎服务端目录结构分析

    |- kbengine (KBE_ROOT 根目录) |- demo (游戏例子工程的根目录) |- res (工程的所有资源) |- spaces (通常存放游戏场景相关的资源,例如Navmesh) ...

  4. 从零开始学游戏开发(一):下载与安装UE4游戏引擎

    如何下载和安装虚幻引擎 下载Epic Games Launcher 步骤 百度搜索"what is ue4" 点击第一个搜索结果,进入ue4官网 进入官网首页,点击右上角下载 创建 ...

  5. 山寨Unity3D?搜狐畅游的免费开源游戏引擎Genesis-3D

    在CSDN上看到了<搜狐畅游发布3D游戏引擎Genesis-3D 基于MIT协议开源>(http://www.csdn.net/article/2013-11-21/2817585-cha ...

  6. 开源免费的HTML5游戏引擎

    青瓷引擎的成长 青瓷引擎自2015年4月项目启动开始,7月首次亮相2015年ChinaJoy,便得到业界的极大关注,随后开启限量测试,收到数百个开发者团队的试用申请及反馈,期间经历了18个内测版本,完 ...

  7. Unity3D游戏开发初探—1.跨平台的游戏引擎让.NET程序员新生

    一.Unity3D平台简介 Unity是由Unity Technologies开发的一个让轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的 ...

  8. 如何选择 H5 游戏引擎

    原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场或将成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折.如何选择适合团队和项目的引擎,笔者通过学习和项目实 ...

  9. 避坑宝典:如何选择HTML5游戏引擎

    原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折. 如何选择适合团队和项目的引擎,笔者通过学习和项目实践 ...

随机推荐

  1. C++手动调用析构函数无效问题排查

    在学习C++的时候,都知道不要手动调用析构函数,也不要在构造函数.析构函数里调用虚函数.工作这么多年,这些冷门的知识极少用到,渐渐被繁杂的业务逻辑淹没掉. 不过,最近项目里出现了析构函数没有被正确地调 ...

  2. axios替换jquery的ajax

    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script> <scr ...

  3. Image Processing and Computer Vision_Review:HPatches A benchmark and evaluation of handcrafted and learned local descriptors——2017.04

    翻译 HPatches:手工和学习本地描述符的基准和评估——http://tongtianta.site/paper/8979 摘要:在本文中,我们提出了一个评估本地图像描述符的新基准.我们证明现有数 ...

  4. linux驱动程序与菜单关联

  5. 六:MVC数据建模(增删改查)

    今天我们来学习mvc增删改查等操作(试着结合前面学习的LINQ方法语法结合查询) 我创建了一个car的数据库,只有一个Cars表 表里面就几个字段 插入了一些数据 想要创建一个ADO.NET实体数据模 ...

  6. [Abp vNext微服务实践] - 添加中文语言

    简介 abp vNext中提供了多语言功能,默认语言是英文,没有提供中文语言包.在业务开发中,定义权限后需要用中文的备注提供角色选择,本篇将介绍如何在abp vNext中加入中文语言. step1:添 ...

  7. (转)VMware虚拟机三种网络模式的区别及配置方法;

    我的一点实际经验理解桥接和NAT 桥接是虚拟机完全作为一个独立的地址接在局域网中,NAT是虚拟机依赖宿主主机地址转换的一种方式 例子我的虚拟机如果用桥接模式,连接外部网站如百度时会提示此pc没有装公司 ...

  8. Rasterize order group

    增加shade 这里的并行 可以让更多 ...并行只在write那里wait 语法 struct I {float a [[raster_order_group(0)]];};

  9. summernote 富文本编辑器限制输入字符长度

    项目中需要一个比较简单的富文本编辑器,于是选中了summernote .虽然比较轻量,但是在开发中也遇到了几个问题,在此记录一下. 1:样式和bootstrap冲突,初始化之后显示为: .note-e ...

  10. 编译vim8

    1.获取最新的vim源码 $ wget https://codeload.github.com/vim/vim/tar.gz/v8.1.2256 2.解压缩 $ tar -xvzf vim-8.1.2 ...