2011-03-06 173 views
1

尝试从Linux for Linux安装Ogre3d后,它的所有内容都已正确构建,但我意识到自己已经构建了静态库。我再次使用CMake重新构建,这一次取消了静态选项。当我在代码::块创建一个新的食人魔项目,并尝试编译,我得到:致命错误:OgreCgPlugin.h:没有这样的文件或目录(Ogre3d)

__________________________________________________ ____ _________________________________________________________ 
| /usr/local/include/OGRE/OgreStaticPluginLoader.h | 28 | fatal error: OgreCgPlugin.h: No such file or directory | 
|__________________________________________________|____|________________________________________________________| 

我既静态和动态建立OGRE3D的得到这个错误。请注意,在创建项目后,我没有更改任何设置,只需单击编译即可。谁能帮我?

+0

我认为Ogre有一些.cfg文件需要放在你的程序目录 – vdsf 2011-03-06 19:34:53

回答

1

它几乎听起来像当你重新编译(取消选中静态)后,它没有安装这些文件,因为在构建过程中,它会生成一个名为OgreBuildSettings.h的文件来保存这些信息(在这种情况下,它定义了OGRE_STATIC_LIB,尽管事实上你没有选中它。)

如果你直接从Ogre存储库目录运行cmake,我建议检出一个干净的Ogre源代码并重建。

一两件事,可能是有益的 - 通常当我构建它,我会按照沿的线条组成的图案:

cd /path/to/ogre; mkdir build && cd build && cmake-gui .. && make && sudo make install

这有让我的构建配置从独立的利益来源,让我有动态和静态构建单独的构建目录,并且(最重要的是)允许我删除构建目录并快速重新开始,如果我搞砸了。 (:

+0

好吧现在我试图尽可能地删除Ogre的所有痕迹,再次下载源代码,建设,希望,在非静态的方式:) – Ell 2011-03-07 16:48:25

+0

I'v重新编译和一切,但现在我得到“加载共享库时出错:libOgreMain.so.1.7.2:无法打开共享对象文件:没有这样的文件或目录” – Ell 2011-03-07 18:56:53

+0

@Eli - 我假设你在重新编译后做了一个'make install' - 你知道它在安装后把库放在哪里吗?另外,如果您使用Linux,则可能需要重新加载库缓存,例如'sudo ldconfig'。 – 2011-03-08 16:28:44

相关问题