一方猪猴
走走停停,停停走走

参考了: http://hi.baidu.com/hy469680890/blog/item/5bf185d8b1d6e22011df9b50.html

http://www.cnblogs.com/oiramario/archive/2010/03/03/1677461.html

1.下载CEGUI源文件

这个不用多说了,百度就知道了,我下载的是最新的版本(0.7.1)

 

2.下载依赖库

这个东西是必须。要不然会出现一片的错误。至于基本的配置,比如拷贝文件到某某文件夹下,这个网上的教程很多,我就不重复了。

 

3.编译源文件

 

这里编译的是Crazy Eddie's GUI System

进入 \CEGUI-0.7.1\CEGUI-0.7.1\projects\premake

运行build_vs2008.bat(或对应的其他版本),将看到CEGUI.sln

继续运行build_samples_vs2008.bat(或对应的其他版本),将看到CEGUISamples.sln

因为以前装过Lua所以运行build_samples_vs2008.bat报错:
 premake --file samples.lua --target v

s2008

samples.lua:7: could not load package `helpers' from path `;;C:\Program Files\Lu

a\5.1\lua\?.luac'

到网上查了一下解决方案如下 

错误是因为以前装过LUA设置了LUA_PATH环境变量的原因导致的。删除掉变量。

或者在脚本 build_samples_vs2008.bat开头加上 set LUA_PATH= 就可以了。(具体操作的时候不知道变量在那,于是直接set LUA_PATH=)。

 

4.修改错误

我用的是VS2010来运行的sln,出现一大堆的错误。按网上其他同学的方式一一解决,最后只剩下了一个错误 

'initializing' : cannot convert from 'int' to 'CEGUI::ListboxItem *' 

 貌似这个错只在VS2010出现,经过我一番查找询问,最后在

http://www.cegui.org.uk/phpBB2/viewtopic.php?f=10&t=4868

发现了相似的问题,看到有人这样改了之后可以运行,于是按照他的方法修改了,可是运行还是出错。不过这回好了点,至少知道问题在那,反复尝试,终于搞定了

 将CEGUIMultiColumnList.cpp 中

// Insert a blank entry at the appropriate position in each row.

for (uint i = 0; i < getRowCount(); ++i)

{

d_grid[i].d_items.insert(d_grid[i].d_items.begin() + position, 0);

}

修改成

for (uint i = 0; i < getRowCount(); ++i)

{

  d_grid[i].d_items.insert(d_grid[i].d_items.begin() + position, nullptr);

}

 

再次编译终于通过了。 

 

posted on 2010-08-06 19:41  一步之遥  阅读(1248)  评论(0)    收藏  举报