cegui配置整了好长时间了,在一位大牛帮助下终于搞定了,网上的教程大多是老版本的,cegui-0.8.2版的配置寥寥无几,现在总结一下,献给正在纠结的小白们。

准备工作

 第一步,先下载cegui-0.8.2CEGUI 0.8.x Dependency

     http://www.cegui.org.uk/wiki/index.php/CEGUI_Downloads_0.8.2

  

  第二,我们下载cmake,用于构建文件,cmake官网不太稳定,经常打不开,去这里下载吧,我们对cmake的使用也很简单,只需学会如何构建文件即可,简单了解一下如何使用即可

http://ishare.iask.sina.com.cn/f/7204325.html    ,其他地方也可以.

  然后安装到电脑上,运行结果如下:

 

 好了,准备工作做完了,现在我们开始编译。

  第一,把下载的文件解压到任意目录,但不要出现中文路径,如图两个文件夹一个不能少

          

  第二,构建cegui-deps-0.8.x-src文件,其目录结构如上图,要使用到的文件就是CMakelists.txt,这里面存放的就是构建的过程

  首先,打开cmake,选择目录  ” cegui-deps-0.8.x-src“

  

  然后点击configure,做如下选择,选择自己的编译器,看清楚啊,你可以打开自己的ide看一下版本

               

  接着开始构建,过程显示如下:

The C compiler identification is MSVC 16.0.40219.1
The CXX compiler identification is MSVC 16.0.40219.1
Check for working C compiler using: Visual Studio
Check for working C compiler using: Visual Studio -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler using: Visual Studio
Check for working CXX compiler using: Visual Studio -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Configuring done

  

   

   点击 Generate就可以生成文件CEGUI-DEPS.sln,现在可以打开vs2010进行编译了

  先在debug下编译,再在release下编译,在vs中打开后直接F7,不用配置其他东西。完成后将需要将dependercied文件夹拷贝到cegui-0.8.2目录下

  

  第三,使用cmake构建cegui-0.8.2,过程同上,生成cegui.sln

  编译之前,先将 D:\cegui-0.8.2\dependencies\bin添加到系统环境变量path里面去

  然后后编译会出如下错误

错误1

  error C2065: “CEGUI_NEW”: 未声明的标识符

  解决方法:将CEGUI_NEW 改为new

错误2,这是一大堆错误,打开源代码看看,你就明白了,不过我不明白怎么会出现这种错误

>Sample_FontDemo.cpp(): error C2001: 常量中有换行符
>Sample_FontDemo.cpp(): error C2001: 常量中有换行符
>GameMenu.cpp(): error C2001: 常量中有换行符
>GameMenu.cpp(): error C2146: 语法错误: 缺少“)”(在标识符“d_botBarLabel”的前面)
>GameMenu.cpp(): error C2001: 常量中有换行符
>GameMenu.cpp(): error C2146: 语法错误: 缺少“)”(在标识符“d_topBarLabel”的前面)
>GameMenu.cpp(): warning C4819: 该文件包含不能在当前代码页()中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
>GameMenu.cpp(): error C2001: 常量中有换行符
>GameMenu.cpp(): error C2146: 语法错误: 缺少“)”(在标识符“d_botBarLabel”的前面)

  改为:(encoded_char*)"+11111111111111111111"

  改为:"1"

  改为finalText += reinterpret_cast<const encoded_char*>("d");

  改为finalText += reinterpret_cast<const encoded_char*>("1");

  改为:finalText += reinterpret_cast<const encoded_char*>("1");

现在好了,全部编译成功。终于看到哦哦梦寐以求的结果了

  

  还有一点需要注意,就是默认情况话运行WidgetDemo后会是程序崩溃,如下:

  

  

  向那些无私奉献的大牛小牛们致敬!谢谢你们。

cegui 编译过程详解(cegui-0.8.2)的更多相关文章

  1. cegui-0.8.2编译过程详解

    cegui 编译过程详解(cegui-0.8.2) cegui配置整了好长时间了,在一位大牛帮助下终于搞定了,网上的教程大多是老版本的,cegui-0.8.2版的配置寥寥无几,现在总结一下,献给正在纠 ...

  2. Android编译过程详解(一)

    Android编译过程详解(一) 注:本文转载自Android编译过程详解(一):http://www.cnblogs.com/mr-raptor/archive/2012/06/07/2540359 ...

  3. GCC 概述:C 语言编译过程详解

    Tags: C Description: 关于 GCC 的个人笔记 GCC 概述 对于 GCC 6.1 以及之后的版本,默认使用的 C++ 标准是 C++ 14:使用 -std=c++11 来指定使用 ...

  4. uboot主Makefile分析(t配置和编译过程详解)

    1.编译uboot前需要三次make make distcleanmake x210_sd_configmake -j4 make distclean为清楚dist文件. make x210_sd_c ...

  5. uboot配置和编译过程详解【转】

    本文转载自:http://blog.csdn.net/czg13548930186/article/details/53434566 uboot主Makefile分析1 1.uboot version ...

  6. uboot配置和编译过程详解

    根据朱有鹏老师讲解整理 一.uboot主Makefile分析 1.uboot version确定(Makefile的24-29行) include/version_autogenerated.h文件是 ...

  7. Win7+VS2010环境下CEGUI 0.8.4编译过程详解

    转载▼   1. 在http://cegui.org.uk/download 下载CEGUI源码包 cegui-0.8.4 以及CEGUI依赖库(Windows / Apple OS X only) ...

  8. C语言编译过程详解

    前言 C语言程序从源代码到二进制行程序都经历了那些过程?本文以Linux下C语言的编译过程为例,讲解C语言程序的编译过程. 编写hello world C程序: // hello.c #include ...

  9. Android编译过程详解(三)

    前面两节讲解了自定义Android编译项和创建Product产品配置文件,除了编译和定义产品相关环境变量外,还需要定义Board相关环境变量. 1. build/core/config.mk 109 ...

随机推荐

  1. ArcGIS API for JavaScript开发初探——基础知识

    1.前言 在ArcGIS Web API开发体系中一共有四大类,分别为: ArcGIS API for Flex ArcGIS API for JavaScript ArcGIS API for RE ...

  2. NIO(一)缓冲区

    I/O的基本概念 同步和异步的概念: 所谓的同步就是在发出一个请求的时候,如果没有得到结果,就不返回.即调用者主动等待返回结果. 所谓的异步:调用之后直接返回结果,一般通过回调函数来处理这个应用. 阻 ...

  3. matplotlib学习之(四)设置线条颜色、形状

    本文是学习<matplotlib for python developers>的一点笔记plot画图时可以设定线条参数.包括:颜色.线型.标记风格.1)控制颜色颜色之间的对应关系为b--- ...

  4. 未能加载文件或程序集“System.Web.Http, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)解决办法

    1.查看引用处是否确实引用, 2.查看<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1& ...

  5. 前端知识体系之CSS及其预处理器SASS/LESS

    如果你是个前端设计师,很多时候我们都在写CSS,CSS是定义页面样式的脚本,并不是一种编程语言,只是一行行单纯的描述页面元素的样子,如果对英语熟练的话,它像说话一样简单,这里举个简单的例子: body ...

  6. 如何让图片相对于上层DIV始终保持水平、垂直都居中

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. IPv4与IPv6的校验函数

    1. PHP校验IPv4掩码是否合法,在网上搜了下,排名最高的如下, <?php function is_mask($mask){ $bin_mask =(string)decbin(ip2lo ...

  8. SqlServer触发器的理解

    SqlServer触发器是与表事件相关的特殊存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发.比如当对一个表进行操作( insert,delete, update)时就会激活它执行. ...

  9. 生产环境LAMP搭建 - 基于 fastcgi

    生产环境LAMP搭建 - 基于 fastcgi 由于在module模式,php只是已http的模块形式存在,无形中加重了http的服务负载,通常在企业架构中,使用fastcgi的模式,将所有的服务都设 ...

  10. JavaScript日期加减

    JS中的日期加减使用以下方式: varcurrentDate = new Date(); 对日期加减: date.setDate(date.getDate()+n); 对月加减: date.setMo ...