C_and_CPP 板


LINE

小弟search了一下板上, 似乎没有完整的介绍, 或遇到小弟的麻烦.... 今天搞了一个早上终於OK了, 贴一下相关资讯看看有没有板友用得上:) == 环境: XP sp3, Dev-Cpp 4.9.9.2, GLUT 3.7.6, 其他package详见link.... Dev-Cpp - http://www.bloodshed.net/devcpp.html GLUT for Win - http://www.xmission.com/~nate/glut.html GLUT DevPak - http://www.nigels.com/glt/devpak/ 用到的sample - http://www.songho.ca/opengl/gl_tessellation.html 照google到的资料, 安装完Dev-Cpp後, 用它的update可以找到相关Pak. 不过小弟试连不上server, 所以另外抓了GLUT DevPak, 点两下安装即可. 再把GLUT for Win里的glut32.dll放到目的.exe或system32的folder下. (顺便确认一下GLUT.h放好了, 因为小弟当初流程都混淆了, 懒得回复说) 之後Dev-C++开新的专案, 选到multimedia那一个tab, 就有GL/GLUT可以选. (不然就要自己去搞makefile, 或者去设定project property里的link library) 里面还附有sample code, 没有意外的话, build下去直接就可以run了才对.... == 意外状况: 1. 小弟抓了网路上OpenGL Tesselation的sample下来build的时候, 遇到类似下面这种奇怪的Linker Error, 有多个不止这一个就是: [Link error]undefined referende to "__glutInitWithExit@12" 解决方法: 在 #include <GL/glut.h> 之前加入一行: #define GLUT_DISABLE_ATEXIT_HACK PS. 这很诡异, 後来build成功以後, 就算拿掉 #define 也重做不出来了.... 2. 同样是上面的sample code, 在build时还会出现另外一种error: invalid conversion from `void (*)()' to `void (*)()' 加上另一个error在同一行, 但是忘记error message是什麽了. 基本上是有call gluTessCallback() 就会报这行上面这两个error. 解决方法: 把 (__stdcall*) 全部换成 (CALLBACK*) 就好了. PS. 只是当我build成功後, 改回(__stdcall*)又可以了, 只有用(*)不行. 不过我不明白的是为什麽看起来是同是 void (*)() 却不能互转.... 3. 在 #include <GL/glut.h> 和 #include <stdlib.h> 以後有如下的error: error C2381: 'exit' : redefinition; __declspec(noreturn) differs C:\Program Files\Microsoft Visual Studio 8\VC\include\ GL/glut.h(146) : see declaration of 'exit' 解决方法: 把 #include <stdlib.h> 放在 #include <GL/glut.h> 之前.... PS. 这个问题其实是在VC++遇到的, 想说就把它一起列上来reference吧. 诡异的是, 小弟现在的环境又重做不出这个error了, 所以是抓来的. (因为小弟平台上有3~4组IDE环境, 实在懒得去厘清/重做问题了^^||) == 以上, 意外状况里有一些case小弟google回来乱试是打通了, 只是倒不是全部明白到底问题是什麽, 以下附上参考资料吧: #1 - http://www.lslnet.com/linux/f/docs1/i47/big5323508.htm #3 - http://social.msdn.microsoft.com/Forums/zh-TW/Vsexpressvc/ thread/4cf463c1-5fee-4daa-b135-be8b06ab7f8f (请接起来) 关於#3里的讨论有一个改preprocessor的方法, 不过当时因为换.h的顺序就好了, 所以小弟我没有仔细研究; 下面还有更古老的讨论, 看起来似乎是VC自己的问题: http://www.gamedev.net/community/forums/topic.asp?topic_id=128869 大概就这样, 在VC下反而还比较简单, .h/.lib 往 PlatformSDK\ 分类放好, glut32.dll 也是放 system32\ 下; 另外project的linker input加一下就好了. 之前弄Dev-C++时google到说把glut.def或者glut.lib放到Dev-Cpp\lib下. 基本上根本就不work; 这次刚好有需要用到, 所以硬是把Dev-C++弄起来了.... -- 以上~~提供一下今天早上的经验, 看有没有板友用得上, 也顺便请教"意外状况"里遇到的几个case喵....<(_ _)> --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.41.4







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP