今天调试自己的OGRE源码,由于自己是先装的SDK,后装的源码,所以链接库设置的是一塌糊涂,调试的时候想查看orgeroot.h对应的.cpp文件,可是怎么也进不去,初步以为是自己的VS插件的版本太低或者是源码的include在sdk的include之后,于是分别对这两种情况进行了排查,发现还是查看不了接口对应的源文件。为了节省时间,于是谷歌了,发现这种c++的问题网上没有具体的解释,没办法,只能自己摸索了。
自己亲自对比了一下SDK和源码的不同,其实大部分都差不多,SDK相对精简很多,只有include、bin、lib三个文件,没有相应的SRC,这就是我们为什么不用编译的原因,但是问题也相继而来,突然恍然大悟昨天看编程指南说的源码是精通一个库的首选,SDK压根就找不到cpp文件,这也难怪我的程序事儿显示不出来,原来即使我链接到了源码的.h文件,由于SDK也有相应的.h文件,所以还是找不到.cpp文件。没办法,自己开始掰开SDK了,把include直接剪切到别的位置或者不放在VC++目录中,我选的是前一种方法,因为前面我讲过了,我的vc++目录稍微有点让我头大,就不改它了。这时,你的问题会接踵而至,编译程序,显示无法链接到boost。无巧不成书,今天在verycd上面看见有个人就安装的附带库做了一个链接。原来SDK里面有boost库,而src里面却找不到。好吧,为了节省时间,我就不下BOOST了,直接把SDK的boost加入到VC++目录中,ok,现在终于可以看到源码了,截图如下:
PS:本来打算卸载了SDK的,因为源码里面也有相应的例子,但是鉴于不愿意下载boost,所以就算了,现在虽然能够查看cpp文件,但是仍然有些不够智能,如果下次装ogre,我推荐想研究的朋友首选源码版,SDK研究价值不是太大(个人浅薄观点),网上关于SDK和源码的说法没具体查过,以上都是个人查看文件的感悟,希望能对你解决问题有帮助。