天天看点

基于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

继续阅读