编译CEGUI

平台:

  windows 7 /64bit /VS2005

CEGUI下载

  地址:  http://www.cegui.org.uk/wiki/index.php/CEGUI_Downloads_0.7.9

  源码选择:

    CEGUI 0.7.9 Library Source Downloads

    This package contains the source code supplied as a compressed zip archive. It is intended for Microsoft Windows users. Download Now!

    得到 CEGUI-0.7.9.zip

  依赖包选择:

    CEGUI 0.7.9 Binary Dependency Downloads for MSVC++

    MSVC++ 2005 (SP1 + ATL fix) precompiled dependency libraries used by CEGUI supplied as a compressed zip archive. This dependencies package is needed to build CEGUI 0.7.9                           from source. Download Now!

    得到 CEGUI-DEPS-0.7.x-r2-vc8.zip

编译

  参照:  http://www.cegui.org.uk/wiki/index.php/Build_from_source_for_Win32

  分别解压 CEGUI-0.7.9.ZIP  / CEGUI-DEPS-0.7.X-r2-vc8.zip

  依赖包解压后放入CEGUI目录中

  最后目录结构如:

  

E:\cegui\CEGUI-0.7.9
	\bin
		//初始空.生产的Sample执行文件将放到这里
	\cegui
		//cegui源码
	\datafiles
	\dependencies
		//dependencies是拷贝过来的依赖包
		\bin
		\include
		\lib
		……各种License
	\doc
	\lib
		//初始空.CEGUI生成的LIB
	\project
		\Xcode
		\premake
			config.lua
			//双击下面bat前配置下
			build_samples_vs2005.bat
			//双击生产CEGUISamples.sln
			build_vs2005.bat
			//双击生产CEGUI.sln
			
	\Samples
		//sample源码
	acinclude.m4
	aclocal.m4
	bootstrap
	config.guess
	config.sub
	……其他文件

   我的电脑默认找不到DX9相关文件

  修改E:\cegui\CEGUI-0.7.9\projects\premake\config.lua

  将DIRECT3D9_RENDERER = true 修改为false,如下  

-------------
-- Renderers
-- this controls which renderer modules are built
OPENGL_RENDERER = true
DIRECT3D9_RENDERER = false  
DIRECT3D10_RENDERER = false
DIRECT3D11_RENDERER = false
IRRLICHT_RENDERER = false
OGRE_RENDERER = false
NULL_RENDERER = false

  

  重新点击bat生成VS工程文件。

  编译CEGUI.sln

  编译CEGUISamples.sln

  编译CEGUISamples.sln的时候,所有的sample项目会报连接错误,找不到 "freeglut_static.lib"这个文件。

  但是项目的配置中设置的是 freeglut_d.lib,依赖包中也只有freeglut_d.lib。

  直接在依赖包中 E:\cegui\CEGUI-0.7.9\dependencies\lib\static 创建freeglut_d.lib的备份,重命名为 freeglut_static.lib。重新编译CEGUISamples.sln即成功。

  

 

  以上编译都是默认方案  : Debug / static

  E:\cegui\CEGUI-0.7.9\bin 目录下有生产的Samples执行文件

  Demo7的半透明和窗口移动效果不错 。

  

   

如果用代码跑sample的花,会找不到资源

代码在 e:\cegui\CEGUI-0.7.9\Samples\common\src\CEGuiBaseApplication.cpp

const char* CEGuiBaseApplication::getDataPathPrefix() const
{
    static char dataPathPrefix[PATH_MAX];
    char* envDataPath = 0;
    envDataPath = getenv(DATAPATH_VAR_NAME);
    if (envDataPath != 0)
        strcpy(dataPathPrefix, envDataPath);
    else
        strcpy(dataPathPrefix, CEGUI_SAMPLE_DATAPATH);
    return dataPathPrefix;
}
#ifndef CEGUI_SAMPLE_DATAPATH
    #define CEGUI_SAMPLE_DATAPATH "../datafiles"
#endif

/***********************************************************************
    Static / Const data
*************************************************************************/
const char CEGuiBaseApplication::DATAPATH_VAR_NAME[] = "CEGUI_SAMPLE_DATAPATH";

 两种方法:

  1.修改 CEGUI_SAMPLE_DATAPATH 的值到具体路径

  2.设置名称为 CEGUI_SAMPLE_DATAPATH 的系统环境变量,变量值是资源路径,比如这里的

      E:\cegui\CEGUI-0.7.9\datafiles

      

原文地址:https://www.cnblogs.com/ezhong/p/2991668.html