QGLViewer 编译安装步骤

由于工作学习的需要,要用opengl绘制显示些模型动画,原来用的是Qt做UI,直接调用的是QGLWidget类,但这个只是提供了基本的框架,很多交互操作还需添加代码完成,自己偷懒也觉得繁琐,就借用了开源的工具库QGLViewer,下面是自己的编译安装过程。

开发环境:

Windows 7 64bit

VS2012

Qt 5.2.1 for Windows 64-bit (VS 2012, OpenGL, 553 MB)

Visual Studio Add-in 1.2.3 Alpha for Qt5

libQGLViewer 2.5.0

执行下面步骤的前提是已经装好Qt和其对应的VS插件

步骤1——下载libQGLViewer库,解压缩

步骤2——编译libQGLViewer库

打开VS2012,点击菜单项 QT5->Open Qt Project File,选择步骤1 解压的路径\QGLViewer\QGLViewer.pro, 然后编译即可。编译成功后可在 QGLViewer\x64\Release目录下找到 QGLViewer2.dll 和 QGLViewer2.lib,这就是以后需要调用的动态库和静态库文件。 如果需要调试可以在debug模式下再编译一次,这时得到的是QGLViewerd2.dll 和 QGLViewerd2.lib。

步骤3——测试自带examples(以simpleViewer为例)

i)仍旧通过VS2012中的QT5菜单项打开simpleViewer.pro,编译会报如下错误

 

这是由于程序找不到静态库,根据提示用文本格式打开simpleViewer.pro文件,替换路径C:\Windows\System32为QGLViewer2.lib所在目录。另外把QGLViewer2.dll所在目录添加到系统环境变量中或者将dll复制到C:\Windows\System32和C:\Windows\SysWOW64中。

ii)重新按i)执行,又出现如下错误:

 

这是程序入口错误造成的,选择工程Properties->Linker->Advanced,在Entry Point中添加mainCRTStartup,再编译运行,成功通过。

 

 步骤4-编译安装QGLViewerPlugin

为了绘制UI方便,该库还提供了可以在Qt Designer中拖放的插件。 打开VS2012,点击菜单项 QT5->Open Qt Project File,选择步骤1 解压的路径\designerPlugin\designerPlugin.pro, 然后编译即可(记得替换路径C:\Windows\System32为QGLViewer2.lib所在目录)。编译成功后可在 designerPlugin\x64\Release目录下找到 qglviewerplugin.dll 和 qglviewerplugin.lib,这就是以后需要调用的动态库和静态库文件。 复制qglviewerplugin.dll 到 D:\Qt\Qt5.2.1\5.2.1\msvc2012_64_opengl\plugins\designer(注意替换成你所对应的路径下)即可。打开 Qt Designer可以看到插件QGLViewer已安装成功。

  

 

转载于:https://www.cnblogs.com/woolongtea/p/3545134.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/460572.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

触摸屏——S5PV210的触摸屏的理论与操作

以下内容源于朱有鹏嵌入式课程的学习与整理,如有其侵权请告知删除。 一、输入类设备简介 1、input/output 输入输出,是计算机系统中的一个概念。计算机可以看作数据处理器。计算机的主要功能就是从外部获取数据,然后进行计算加工得到输出数据…

搭建nginx流媒体服务器(支持HLS)

环境搭建 (一)下载源代码 nginx,地址:http://nginx.org/可以选择需要的版本下载 nginx_mod_h264_streaming-2.2.7.tar.gz ,支持MP4流,具体的说明在下面的这个网页 http://h264.code-shop.com/trac/wiki/Mod…

Spring中的动态代理

动态代理:指的就是通过一个代理对象来创建需要的业务对象,然后在这个代理对象中统一进行各种需求的处理。 学习完Spring后会发现,Spring中的AOP(面向方面编程:Aspect Oriented Programming)是个很重要的知识…

LED——S5PV210的LED的理论与操作

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 一、LED物理特性介绍 LED本身有2个接线点,一个是LED的正极,一个是LED的负极。 LED的功能就是亮或者不亮,只需要给LED的正极加电压即可点亮LED,去掉电压…

“.公司”域名注册总量TOP15:新网问鼎 万网居亚

IDC评述网(idcps.com)01月16日报道:根据ntldstats.com发布的最新数据显示,截止至01月15日17:00,在“.公司”域名注册总量大战中,新网打败众多国内外域名服务商,成为新晋霸主,其“.公…

Prepare for Mac App Store Submission--为提交到Mac 应用商店做准备

返回 Mac App Store Prepare for Mac App Store Submission 提交到Mac 应用商店之前的准备 Most of your time is spent on coding tasks, but to develop for the Mac App Store, you need to perform a number of administrative tasks, using Xcode and other tools. You’l…

ARM通识——关于ARM的一些认识

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。 注意,由于文章的撰写时间过早,很多内容没有更新,这里仅当一个通识了解。 1、ARM发展的里程碑 ARM的前身为艾康电脑(Acorn),于…

使用RMAN备份数据库

1.1使用控制文件备份全库 1.1.1配置备份路径 1.1.2 RMAN备份全库 1.2使用catalog数据库备份全库 1.2.1配置到远程数据库的TNS 1.2.2创建表空间及设置用户 1.2.3进入目录数据库并注册 1.2.4 CATALOG方式备份全库 转载于:https://www.cnblogs.com/myrunning/p/4231057.html

PL/SQL Developer连接Oracle 11g在Win8 64位系统下乱码

PL/SQL Developer在64位系统上连接Oracle,需要安装32位Oracle client客户端,使用后,发现操作数据库出现乱码的情况。经过查找资料,解决此问题,方法如下: 需要在系统的环境变量中,加入以下变量&a…

命令模式--command模式

首先来一个命令的接口: package mode.command;/*** * 定义一个命令接口,其中有一个抽象的执行方法,参数人命令接收器* * */ public interface Command {public void execute(CommandReceiver commandReceiver); }定义一个命令接受者的接口&am…

uploadify scriptData参数无法传参的问题

最近需要使用到uploadify,需要向后台传递参数,使用script最多只能够传递一个参数,当然也可以通过合并参数然后再在服务器段拆分参数的方法来传递多个参数,而uploadify插件提供的scriptData却怎么都无法使用,网上查阅了…

安装iproute2

yum install -y gcc bison flex#tar -xzf iproute2-3.17.0.tar.gz#cd iproute2-3.17.0#sed -i /^TARGETS/sarpdg misc/Makefile#make SBINDIR/sbin#make SBINDIR/sbin install参考资料:http://blog.sina.com.cn/s/blog_5f5716580100rvop.htmlhttps://www.kernel.or…

「北京」京东 JD.COM 招聘中/高级前端工程师

职位描述: 1、计算机或相关专业专科以上学历,2年以上网站前端开发经验,电子商务相关从业经验优先;2、精通各种Web前端技术,对符合web标准的网站重构有丰富经验,有成功作品;3、理解并掌握JavaScr…

前端上传组件Plupload使用指南

我之前写过一篇文章《文件上传利器SWFUpload使用指南》,里面介绍了上传组件SWFUpload的使用方法,但现在随着html5技术的逐渐推广和普及,再去使用以flash为上传手段的SWFUpload显然就有点过时了,毕竟html5原生的就给我们提供了文件…

HTML5简易在线画图工具

HTML5简易在线画图工具 原文:HTML5简易在线画图工具继上次学习了HTML5的路径画圆做了动态时钟、异次元空间的反转做了运动的太阳系,这两天将画线、画圆、填充等知识点结合起来做了一个简易的在线画图工具: 查看DEMO:HTML5简易在线画图工具 功…

uboot中系统时钟初始化函数:system_clock_init

时钟初始化函数内容如下: /** system_clock_init: Initialize core clock and bus clock.* void system_clock_init(void)*/ system_clock_init:ldr r0, ELFIN_CLOCK_POWER_BASE 0xe0100000/* Set Mux to FIN */ldr r1, 0x0str r1, [r0, #CLK_SRC0_OFFSET]ldr r1, …

【excel技巧读书笔记001】清除打开过的文件记录

我们在工作的时候经常打开工作薄,这些工作薄都会在最近使用的工作薄列表看到,如果不希望别人看到自己打开过的记录,可以将最近使用的工作薄列表清空。具体步骤如下:1.【文件】-【选项】-【高级】-【显示】显示此数目的最近使用文档…

写一个函数,使给定的一个二维数组(3×3)转置,即行列互换

写一个函数,使给定的一个二维数组(33)转置,即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 163 Solved: 120[Submit][Status][Web Board]Description 写一个函数,使给定的一个二维…

快速开发系统之前台页面 ---- NO1----登录页面

2019独角兽企业重金招聘Python工程师标准>>> 快速开发系统之前台页面 ---- NO1----登录页面 <% page language"java" contentType"text/html; charsetutf-8"pageEncoding"utf-8"%> <!DOCTYPE html> <html lang"z…

微信公众平台用户分组管理开发文档详解

本文转载至 http://www.5icool.org/a/201402/a4292.html 时间&#xff1a;2014-02-09 来源&#xff1a;互联网 开发者可以使用接口&#xff0c;对公众平台的分组进行查询、创建、修改操作&#xff0c;也可以使用接口在需要时移动用户到某个分组。 创建分组 一个公众账号&…