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

准备工作

 第一步,先下载cegui-0.8.2和CEGUI 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. RxJava2 中多种取消订阅 dispose 的方法梳理( 源码分析 )

    Github 相关代码: Github地址 一直感觉 RxJava2 的取消订阅有点混乱, 这样也能取消, 那样也能取消, 没能系统起来的感觉就像掉进了盘丝洞, 迷乱… 下面说说这几种情况 几种取消的 ...

  2. linux日常1-踢出用户

    踢掉自己不用的终端 1.查看系统在线用户 w 2.查看哪个属于此时自己的终端(我开了两个连接) who am i 3.pkill掉自己不适用的终端 pkill -kill -t pts/1 注意: 如 ...

  3. Java Annotation使用详解

    Java  Annotation是JDK5.0引入的一种注释机制.它与注释有一定区别,可以理解为代码上的特殊标记,通过这些标记我们可以在编译,类加载,运行等程序类的生命周期内被读取.执行相应的处理.通 ...

  4. PHP snippets

    Friendly file size string public static function bytesToSize($bytes) { if ($bytes < 1024) { retur ...

  5. 流媒体 8——因特网 tcp/ip

    1 因特网 1.1 因特网的结构 组成因特网的子网之间在物理上的相互连接都是通过网关设备实现的.通过网关设备互相连接在一起的不同的网络通常称为子网 (subnetwork),因为它们是大网络之中的网络 ...

  6. iOS解析新浪微博的@##以及URL链接并展示

    最近在做一个跟微博相关的应用.其中涉及到了对微博中@.##以及URL链接的解析与展示.分享一下个人处理的方式,希望对需要的人有所帮助. 最终的展现效果: 首先,第一步是你得从纯文本中找到它们.毫无疑问 ...

  7. 求最大公约数和最小公倍数_python

    """写两个函数,分别求两个整数的最大公约数和最小公倍数,调用这两个函数,并输出结果.两个整数由键盘输入.""" ''' 设两个整数u和v, ...

  8. CUDA并行存储模型

    CUDA将CPU作为主机(Host),GPU作为设备(Device).一个系统中可以有一个主机和多个设备.CPU负责逻辑性强的事务处理和串行计算,GPU专注于执行高度线程化的并行处理任务.它们拥有相互 ...

  9. 如何着手学习一个新的PHP框架

    如今的PHP框架层出不穷,名气也各不相同.如何快速掌握一种框架?看看本文吧~ 如今的PHP框架层出不穷,名气也各不相同.我不是这方面的专家,甚至不能熟练地使用其中的一种,所以就不作推荐了.这里我要讨论 ...

  10. vue2.0在页面中自定义组件模块,以及页面与组件之间的数据传递

    1,在初始文件index.html中加入要引入的模块,注意驼峰命名的方式(我就是没写成驼峰,报错) <!DOCTYPE html> <html> <head> &l ...