码迷,mamicode.com
首页 > 其他好文 > 详细

VS2013编译GLUI

时间:2015-06-11 22:46:53      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:

技术分享

vs自带的OpenGL为1.1版本,太老了。

 

 

1,编译glut

https://www.opengl.org/resources/libraries/glut/glut37.zip

查看生成路径,可以改为vs安装目录的lib和include。

技术分享

 

 

2,

技术分享

 

技术分享

找到win32.mak位置。

 

技术分享

改为!include <C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\win32.mak>

 

 

3,

技术分享

因为一开始dll并不依赖glut32.lib, 但是生成时glut32.lib依赖了自己, 所以容易产生glut32.lib库找不到的错误

技术分享

$(link) $(LFLAGS) -out:$(GLUTDLL) -def:glut.def $(OBJS) $(LIBS)改为

$(link) $(LFLAGS) -out:$(GLUTDLL) -def:glut.def $(OBJS) $(LIBS) -NODEFAULTLIB:$(GLUTLIB)

 

技术分享

同上找到mui下的makefile.win修改win32.mak

技术分享

技术分享

技术分享

全部改改改!!!

 

 

4,

技术分享

问题不在chess.c文件。

 

技术分享

修改particle.c的timedelta函数如下:

#if defined(_WIN32)

#include <sys/timeb.h>

#else

#include <limits.h>

#include <unistd.h>

#include <sys/types.h>

#include <sys/times.h>

#endif

 

float

timedelta(void)

{

static long begin = 0;

static long finish, difference;

#if defined(_WIN32)

static struct timeb tb;

ftime(&tb);

finish = tb.time*1000+tb.millitm;

#else

static struct tms tb;

finish = times(&tb);

#endif

difference = finish - begin;

begin = finish;

return (float)difference/(float)1000; /* CLK_TCK=1000 */

}

 

 

5,

技术分享

 

以管理员身份运行C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat自动为vs设置环境变量,然而没效果。

技术分享

查看chess的makefile.win看不懂。

打开chess上一级目录的makefile.win去掉chess.dir使其不编译chess。

技术分享

搞了一下午中午编译完全了。

前面glutwin32.mak的设置会自动把glut.h和生成的glut32.lib、glut32.dll复制到指定vs使用的目录下。

去吃晚饭了,回来找个例子试试。

VS2013编译GLUI

标签:

原文地址:http://www.cnblogs.com/liuhan333/p/4570114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!