單獨編譯osgQt模組 Qt moc

2021-10-04 13:09:01 字數 1605 閱讀 9112

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 os**iewer.lib osgtext.lib osgga.lib

debug版本對應qtcored4.lib qtguid4.lib qtopengld4.lib osgd.lib osgwidgetd.lib osgdbd.lib openthreadsd.lib os**iewerd.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中輸入進入osgqt的include資料夾

d:\vsproject\osgqt\include>moc qgraphicsviewadapter -o moc_qgraphicsviewadapter.cpp

此時檔案列表如下

export

graphicswindowqt

graphicswindowqt.cpp

moc_qgraphicsviewadapter.cpp

qfontimplementation

qfontimplementation.cpp

qgraphicsviewadapter

qgraphicsviewadapter.cpp

qwebviewimage

qwidgetimage

qwidgetimage.cpp

將moc_qgraphicsviewadapter.cpp新增到工程中去

編譯即可得到osgqt.dll

Andriod單獨編譯模組

1.設定環境變數 source build envsetup.sh 或.build envsetup.sh 注意 是source執行,不是直接.執行,同source 區別請參考 2.編譯指定模組 mmm module path 注 module path 是模組所在的路徑 編譯後的模組路徑 可執行檔...

osgQt編譯 執行

1 軟體環境 vs2017 qt5.9.2 cmake3.10.0 2 一開始用的是cmake的最新版本3.15,遇到了一堆問題,cmakelist.txt裡面的一些巨集3.15不再支援,折騰了半天,才發現可能是版本的問題,換了幾個版本之後,發現3.10.0可以編譯通過 參考這裡 4 把qt的bin...

linux 單獨編譯apache的模組

一般都是用 usr local apache2 bin apxs a i c mod rewrite.c來編譯安裝的,但有時候會發現so檔案沒有生成,不知道為啥,可以按照下面的方式自己編譯也行 編譯rewrite模組 網上說使用如下命令就可以直接編譯得到so檔案 usr local apache2 ...