您的位置:首页 > 运维架构

怎样解决CodeBlocks运行VS编写的OpenGL项目时遇到的各种问题的

2013-05-12 18:24 609 查看
终于忍不了VS2010的庞大与复杂,想寻觅一个小巧可爱的IDE,开源的,满足个人编程练习的需要。

近日在一计算机专业大神(二春)的推荐下,结识到Code::Blocks,简称CB吧,官方主页在这里——
http://www.codeblocks.org/
CB简约、轻量,安装也超级方便,好想赶快摸透,来永远替换其他庞大的IDE。但是最近关于图形学的编程问题让我怀疑是不是不能完全依靠它。

难道CB不是真正我想要的吗!!!???为什么?! = =

问题如下。

P.S.关于CB的OpenGL环境的搭建留在另一篇文章里备忘了~

我配置好了所有类库、头文件、动态链接库文件,并且测试成功。

但是当我导入OpengGL的 visual studio工程后,问题就来了。

我的操作是这样的——

1.导入visual studio 工程。

我导入的示例程序是 [OpenGL编程精粹] 一书中的OOGLFrame示例原码。



2.右键选择头文件属性,点上compile file、link file



3.编译运行一下

编译很顺利,但没有运行,结果如下



是不是CodeBlocks无法驾驭现有的visual studio 工程呢?不能忍啊!

于是求助谷歌。在CB论坛上发现相关提问,链接如下
http://forums.codeblocks.org/index.php?topic=8513.0
看后依然不清晰,以致问题的解决一度搁浅。我的最终解决如下,出现问题的原因也列在其中。

1.新建一个GLUT项目,下图第三行第三个



注意!一定不要再import VS project了!因为我的理解是,虽然已经在CB安装文件夹下配置好该有的GL文件,但CB需要相应的新建的project类型来决定对这些文件的调用!之前的作法导致的是无法找到相应的类库,出现错误如下



而之前我的错误的解决方法,就是上文所写的,右键选择头文件属性,点上compile file、link file,这就出现了之前的新问题。

这是因为我这样做,预编译了.h头文件,生成了.h.gch文件,而程序运行链接的头文件是.h文件,这就造成了紊乱。头文件的预处理是完全没有必要的。所以compile file选项不

应打钩。只留下link file选项打钩也是不对的,会出现下图



这其实可以理解了。既然没有了预处理,上哪去link .h.gch.文件呢?

所以,如果你出现以上问题,一定去掉两个勾,并删掉项目根文件夹里已经不小心生成的.h.gch文件,再按如下操作就行了。

2.上文绕了个大圈子解释了问题出现的原因。下面继续。

新建了空的GLUT project之后,会自带一个source文件夹,里面有个main样例程序。删掉即可(右键选remove)



右键project名,add OOGLFrame项目里的需要的文件,文件树就出来了



这样再编译运行,你的VS编写的OpenGL项目就被CB成功带起来啦!



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐