从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的更多相关文章

  1. android 单独编译某个模块

    第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了.以后如果我们修改了And ...

  2. 单独编译使用WebRTC的音频处理模块

    块,每块个点,(12*64=768采样)即AEC-PC仅能处理48ms的单声道16kHz延迟的数据,而 - 加载编译好的NS模块动态库 接下来只需要按照 此文 的描述在 android 的JAVA代码 ...

  3. 【单独编译使用WebRTC的音频处理模块 - android】

    更新 [2015年2月15日] Bill 这段时间没有再关注 WebRTC 以及音频处理的相关信息,且我个人早已不再推荐单独编译 WebRTC 中的各个模块出来使用.实际上本文的参考价值已经很小了,甚 ...

  4. Qt4.7.4下单独编译QtWebkit

    最近编译出了Qt4.7.4的嵌入式版本,但没有编译QtWebkit库.在编译一个使用Webkit的工程时出错,而根据工程的需要,要单独编译QtWebkit库.    由于不想再次编译整个的Qt库,于是 ...

  5. Android5.0 Gallery2上编译Gallery模块出错

    Android5.0 Gallery2上编译Gallery模块出错 时间:2015-05-05 19:32:57      阅读:105      评论:0      收藏:0      [点我收藏+ ...

  6. 单独编译framework【转】

    本文转载自:http://blog.csdn.net/u011168565/article/details/53782325 参考文章: http://bbs.csdn.net/topics/3701 ...

  7. 【转】如何单独编译Android源代码中的模块--不错

    原文网址:http://blog.csdn.net//article/details/6566662/ 第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命 ...

  8. 如何单独编译Android源代码中的模块

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6566662 第一次下载好Android源代码工 ...

  9. Android AOSP 单独编译某一模块

    由于AOSP 项目太大,我只修改了一个模块,比如设置. 那么只需要单独编译设置这个模块就可以了. 首先执行Source: source build/envsetup.sh 执行之后,就会有一些额外的命 ...

随机推荐

  1. Javascript高级程序设计——客户端检测

    ECMAScript虽然是Javascript的核心,但是要在web中使用Javascript,那么BOM才是核心,BOM为我们提供了操作访问浏览器对象的借口, 但是由于BOM没有标准规范,导致存在不 ...

  2. .apache2 设置多个虚拟域名

    <VirtualHost 127.0.0.2:80> ServerName www.xylilun.cn DocumentRoot E:/www/ylll <Directory E: ...

  3. 批处理快速更改ip地址

    在各种网络中切换,windows更换ip地址步骤:  进入控制面板--网络和internet--网络和共享中心--理性适配器设置--然后找到网卡--进入属性--然后internet 协议--更改ip信 ...

  4. Android 网络请求框架android-async-http问题

    今天通过接口请求服务器的一些app数据,发现一个很奇怪的问题,请求一个链接的时候,通常在第一次请求发起的时候没有什么问题,能很快的拿到数据,但是 往后再去请求的时候就会等待很久,而且最后会请求失败,一 ...

  5. 雪峰配置的nginx

  6. 在spring容器中定义初始化和销毁bean前所做的操作,有三种方式

    1.使用注解,通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 package com.luoq.test.annotation.init; ...

  7. jquery 平滑锚

    setTimeout('$("html,body").animate({ scrollTop: $(".title").offset().top }, 1000 ...

  8. 搞明白这八个问题,Linux系统就好学多了

    导读 正在犹豫入坑Linux学习的同学或者已经入坑的同学,经常会问到这样八个问题.今天,这些问题我都会一一解答,希望我的看法能帮助各位同学.常言道“好的开始是成功的一半”,如果你明白了以下八个问题,就 ...

  9. java文档

    http://www.boyunjian.com/javadoc/com.dyuproject.protostuff/protostuff-me/1.0.5/_/com/dyuproject/prot ...

  10. 学习Node.js笔记(一)

    一.什么是Node.js 1.1.Node.js是什么 Node.js是用来编写高性能网络服务器的JavaScript工具包 Node.js 是一个基于Chrome JavaScript 运行时建立的 ...