天天看點

基于OpenCASCADE自制三維模組化軟體(八)相容Linux平台一、系統環境二、編譯源碼三、修改pro檔案四、宏定義五、運作效果項目倉庫

文章目錄

  • 一、系統環境
  • 二、編譯源碼
  • 三、修改pro檔案
  • 四、宏定義
  • 五、運作效果
  • 項目倉庫

一、系統環境

系統:Ubuntu 18.04

Qt5.9.2

二、編譯源碼

首先下載下傳源碼包,然後編譯源碼和安裝到系統。

$ mkdir build && cd build
$ cmake ..
$ make
$ sudo make install
           

三、修改pro檔案

在項目的pro檔案中添加以下内容,當在Linux系統下編譯時将進入到裡面的配置,包括OpenCascade的頭檔案路徑和庫路徑。

#Linux環境下編譯
linux-g++ {
    INCLUDEPATH += /usr/local/include/opencascade
    LIBS += -L/usr/local/lib
}
           

四、宏定義

通過宏定義,編譯器自動區分要編譯的内容,在三維界面的頭檔案中加入以下判斷選擇包含檔案:

#ifdef _WIN32
#include <WNT_Window.hxx>
#else
#undef None
#include <Xw_Window.hxx>
#endif
           

在cpp檔案中添加宏的判斷,使用WindowsNT視窗還是X11視窗:

#ifdef _WIN32
        // 建立Windows NT 視窗
        Handle(WNT_Window) wind = new WNT_Window((Aspect_Handle) window_handle);
#else
        // 建立XLib window 視窗
        Handle(Xw_Window) wind = new Xw_Window(m_display_donnection, (Window) window_handle);
#endif
           

五、運作效果

基于OpenCASCADE自制三維模組化軟體(八)相容Linux平台一、系統環境二、編譯源碼三、修改pro檔案四、宏定義五、運作效果項目倉庫

項目倉庫

https://github.com/Jelatine/JellyCAD

繼續閱讀