单独编译osgQt模块 Qt moc
从alphapixel网站下载了OSG3.0.1VS2010x64版本的库,但是里面不包括osgQt模块,于是得自己编译
*************osgQtx64.zip工程文件可以去本博客园的“文件”中去下载************
64位电脑,自己编译好64位Qt4.8.2,假设编译好的64位Qt位置是C:\Qt\build\x64,里面有bin,lib,include(据了解,Qt官网没有提供Qt4.8.2版本的64安装包)
注意修改环境变量QTDIR的值C:\Qt\build\x64和QT_BIN的值C:\Qt\build\x64\bin
右键解决方案,配置平台选择x64,如果没有此选项,点击“配置管理器”按钮进行配置
安装qt-vs-addin-1.1.11-opensource.exe插件,安装完毕后,VS中会看到有一个Qt菜单
点击Qt菜单,选择Qt Options,在Qt Versions选项卡中点击Add按钮,新建一个Name为4.8.2x64,Path为C:\Qt\build\x64
然后最下面的default Qt/win Version选择新建的4.8.2x64
选择Qt菜单中的Qt Project Settings,选择Version为4.8.2x64,!!!!!!!!这里很重要,否则可能会使用以前安装的32位Qt!!!!!
1、新建一个VS2010控制台空工程,修改配置属性->常规->配置类型为动态库(.dll),字符集选择“使用多字节字符集”
2、配置OSG、Qt头文件和库路径
include目录C:\Program Files\OSG3.0.1VS2010X64\include;C:\Qt\build\x64\include;
lib目录 C:\Program Files\OSG3.0.1VS2010X64\lib;C:\Qt\build\x64\lib;
3、在改配置属性->C/C++->预处理器->预处理器定义添加OSGQT_LIBRARY
4、配置属性->连接器中添加->QtCore4.lib QtGui4.lib QtOpenGL4.lib osg.lib osgWidget.lib osgDB.lib OpenThreads.lib osgViewer.lib osgText.lib osgGA.lib
Debug版本对应QtCored4.lib QtGuid4.lib QtOpenGLd4.lib osgd.lib osgWidgetd.lib osgDBd.lib OpenThreadsd.lib osgViewerd.lib osgTextd.lib osgGAd.lib
5、将osg源文件中的osgQt模块相关头文件和cpp文件拷贝到当前工程中
文件列表如下
Export
GraphicsWindowQt
GraphicsWindowQt.cpp
QFontImplementation
QFontImplementation.cpp
QGraphicsViewAdapter
QGraphicsViewAdapter.cpp
QWebViewImage
QWidgetImage
QWidgetImage.cpp
需要注意的是,QGraphicsViewAdapter这个头文件中有Q_OBJECT宏定义,这个需要Qt的moc.exe进行编译,
而现在此工程不是Qt工程,不会自动调用moc.exe。所以需要手动将QGraphicsViewAdapter这个头文件编译成
moc_QGraphicsViewAdapter.cpp
在cmd中输入
D:\VSProject\osgQt\osgQt\src>moc QGraphicsViewAdapter -o moc_QGraphicsViewAdapte
r.cpp
Qt: Untested Windows version 6.2 detected!
D:\VSProject\osgQt\osgQt\src>
此时文件列表如下
Export
GraphicsWindowQt
GraphicsWindowQt.cpp
moc_QGraphicsViewAdapter.cpp
QFontImplementation
QFontImplementation.cpp
QGraphicsViewAdapter
QGraphicsViewAdapter.cpp
QWebViewImage
QWidgetImage
QWidgetImage.cpp
将moc_QGraphicsViewAdapter.cpp添加到工程中去
编译即可得到osgQt.dll
单独编译osgQt模块 Qt moc的更多相关文章
- android 单独编译某个模块
第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了.以后如果我们修改了And ...
- 单独编译使用WebRTC的音频处理模块
块,每块个点,(12*64=768采样)即AEC-PC仅能处理48ms的单声道16kHz延迟的数据,而 - 加载编译好的NS模块动态库 接下来只需要按照 此文 的描述在 android 的JAVA代码 ...
- 【单独编译使用WebRTC的音频处理模块 - android】
更新 [2015年2月15日] Bill 这段时间没有再关注 WebRTC 以及音频处理的相关信息,且我个人早已不再推荐单独编译 WebRTC 中的各个模块出来使用.实际上本文的参考价值已经很小了,甚 ...
- Qt4.7.4下单独编译QtWebkit
最近编译出了Qt4.7.4的嵌入式版本,但没有编译QtWebkit库.在编译一个使用Webkit的工程时出错,而根据工程的需要,要单独编译QtWebkit库. 由于不想再次编译整个的Qt库,于是 ...
- Android5.0 Gallery2上编译Gallery模块出错
Android5.0 Gallery2上编译Gallery模块出错 时间:2015-05-05 19:32:57 阅读:105 评论:0 收藏:0 [点我收藏+ ...
- 单独编译framework【转】
本文转载自:http://blog.csdn.net/u011168565/article/details/53782325 参考文章: http://bbs.csdn.net/topics/3701 ...
- 【转】如何单独编译Android源代码中的模块--不错
原文网址:http://blog.csdn.net//article/details/6566662/ 第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命 ...
- 如何单独编译Android源代码中的模块
文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6566662 第一次下载好Android源代码工 ...
- Android AOSP 单独编译某一模块
由于AOSP 项目太大,我只修改了一个模块,比如设置. 那么只需要单独编译设置这个模块就可以了. 首先执行Source: source build/envsetup.sh 执行之后,就会有一些额外的命 ...
随机推荐
- XSS Filter绕过
之前挖到某金融网站的xss 但是困于xss filter无奈不好下手.只能在火狐下弹窗. 以下该图是我的测试. 后来发给一个Invoker哥们儿.成功给我发来payload成功绕过了XSS Filte ...
- cvLoadImage
编辑 本词条缺少名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 函数原型:IplImage* cvLoadImage( const char* filename, int flags= ...
- BZOJ 4579: [Usaco2016 Open]Closing the Farm
Description 依次删去一个点和它的边,问当前图是否连通. Sol 并查集. 倒着做就可以了. 每次将一个点及其的边加入,如果当前集合个数大于 1,那么就不连通. Code /******** ...
- Ubuntu14.04安装intel集显驱动
Ubuntu14.04安装intel集显驱动 标签(空格分隔): ubuntu linux 驱动安装 1.查看本机显卡型号 使用lspci命令来获取PCI接口硬件信息 o@o-pc:~$ lspci ...
- Linux 文件rwx权限问题 chmod 777 XXX 任何人拥有最高权限
在Unix和Linux的各种操作系统下,每个文件(文件夹也被看作是文件)都按读.写.运行设定权限.ls -l:得到-rw-r--r-- 1 apple users 2254 2006-05-20 13 ...
- python 端口扫描仪
思路:使用socket进行连接测试,即客户端连接服务器. 核心代码如下: from socket import * def try_port(ip,port,protocol = SOCK_STREA ...
- phpcms不能后台编辑模板
刚安装的phpcms后台无法编辑模板,实际上只需要改一个系统文件的值即可 打开phpcms项目根目录下的: caches/configs/system.php 找到第20行,代码如下: 'tpl_ed ...
- Python类的特点 (1):构造函数与方法
Python中,类的特点: #encoding:utf-8 class Parent(object): x=1 #x是Parent类的属性(字段) def __init__(self): print ...
- SQL Server 2012 自动增长列,值跳跃问题
介绍 从 SQL Server 2012 版本开始, 当SQL Server 实例重启之后,表格的自动增长列的值会发生跳跃,而具体的跳跃值的大小是根据增长列的数据类型而定的.如果数据类型是 整型(in ...
- POJ 2421(prim)
http://poj.org/problem?id=2421 这个题和poj1258是一样的,只要在1258的基础上那么几行代码,就可以A,水. 题意:还是n连通问题,和1258不同的就是这个还有几条 ...