背景:ogre 移植至 android,需要在本地PC练习。
环境:ubuntu 10.04
1 更新apt-get的Ogre源:
$ sudo add-apt-repository ppa:ogre-team/ogre
并 sudo apt-get update
$ sudo apt-get install libogre-dev build-essential automake libtool libfreetype6-dev libfreeimage-dev libzzip-dev libxrandr-dev build-essential autoconf libtool libdevil-dev libfreeimage-dev libfreetype6-dev libglew1.5-dev libxaw7-dev
libxrandr-dev libxt-dev libxxf86vm-dev libzzip-dev libois-1.3.0 libois-dev cmake
以上如有部分不能安装,请更新源
3 Ogre Api 文档& sample
$sudo apt-get install ogre-doc ogre-samples-media ogre-samples-source
dengpei@dengpei-pc:/usr/share/OGRE$ ls
CMakeLists.txt media quakemap.cfg Samples
docs plugins.cfg resources.cfg samples.cfg
4 sample 编译 运行
dengpei@dengpei-pc:~/ogre/build$ cmake /usr/share/OGRE/
dengpei@dengpei-pc:~/ogre/build$ make
dengpei@dengpei-pc:~/ogre/build$ ls
bin CMakeCache.txt CMakeFiles cmake_install.cmake lib Makefile Samples
dengpei@dengpei-pc:~/ogre/build$ ls bin/
plugins.cfg resources.cfg samples.cfg
quakemap.cfg SampleBrowser testTerrain_00000000.dat
运行 SampleBrowser 出错找不到sample
修改 samples.cfg
SampleFolder=../lib/
即可
可能遇到的错误:
Q: cmake 过程中。可能遇到找不到Ogre的头文件,或者库文件情况。
A: 确认已经安装了libogre-dev libois-dev 等包。没有就需要先安装相应的包。
确认安装完毕,在/usr文件夹下用find命令查找错误log中提示的文件,很可能是文件在/usr/lib中,而程序去/usr/local/lib中去找,
那么就建立链接,将文件夹链接到程序查找的路径:
$ sudo ln -s -t /usr/local/lib/ /usr/lib/OGRE (命令表示在/usr/local/lib/ 中简历一个链接,这个链接指向/usr/lib/OGRE目录。链接的名字也叫OGRE)
Q: make中可能找不到OIS库报错
A: 确认安装了 libois-dev libois-1.3.0等相应的包。
Q: ./OgreApp 运行时报错找不到resources.cfg plugins.cfg 或者../media/XXX等文件
A: 例子程序,必须cd到dist/bin/目录下才能正常运行。这写文件都在例子程序的目录中,查找方式是使用相对路径。例子运行时会以运行目录开始查找。所以,如果不在dist/bin/目录下运行,就会找不到文件。
PS:使用code::block建立的orge程序,需要如下设置:
1 右键工程->属性->Buiild options->Debug->Linker settings->Link libraries中的连个库改为:OgreMain和OIS
2 在/usr目录下find 文件:resources.cfg(find /usr/ -name resoures.cfg)。找到后,将resources.cfg plugins.cfg 和media文件全部复制到orge程序的工程目录下。
部门内容来源网络。