Open CASCADE学习|基于visual studio 2022编译源码

news2024/9/24 3:24:45

目录

1、简介  

2、下载  

2.1下载visual studio 2022 community  

2.2下载下载cmake工具  

2.3下载源码  

2.4下载第三方插件  

3、安装  

3.1安装visual studio 2022 community  

3.2安装cmake  

4、编译源码  

5、测试  


1、简介  

Open CASCADE(简称OCC)平台是由法国Matra Datavision公司开发的CAD/CAE/CAM软件平台,可以说是世界上最重要的几何造型基础软件平台之一。开源OCC对象库是一个面向对象C++类库,用于快速开发设计领域的专业应用程序。OCC主要用于开发二维和三维几何建模应用程序,包括通用的或专业的计算机辅助设计CAD系统、制造或分析领域的应用程序、仿真应用程序或图形演示工具。OCC通过有机组织的C++库文件提供了六个模块。可视化模块作为OCC的核心部分,是可视化技术的具体体现。

    

2、下载  

2.1下载visual studio 2022 community  

https://visualstudio.microsoft.com/zh-hans/vs/

2.2下载下载cmake工具  

https://cmake.org/download/,选最新版就可以    

2.3下载源码  

https://dev.opencascade.org/release, 官网下载7.7.0源码

2.4下载第三方插件  

https://dev.opencascade.org/resources/download/3rd-party-components,官网下载第三方插件,至少要下载freeimage-3.17.0-vc14-64、freetype-2.5.5-vc14-64、tcltk-86-64三个依赖包。    

最后,把源码解压后放到一个目录里,在该目录新建一个文件夹3rdparty放解压的依赖包,在该目录新建另外两个文件夹build和install

    

3、安装  

3.1安装visual studio 2022 community  

勾选C++桌面开发,确保MSVC、win10 SDK、C++ Cmake工具都处于勾选状态,其余根据需要选择,按需要修改安装位置后直接安装

3.2安装cmake  

按默认选项安装。

4、编译源码  

打开cmake工具首先配置occ的源码位置和临时构建目录。

然后点一下Configure,选择“Visual Studio 17 2022”,X64编译。    

然后在cmake配置项中配置3RDPARTY_DIR为放置依赖的3rdparty目录,以及INSTALL_DIR目录目录为install

    

配置好之后在点一下Configure,然后点Generate,最后点OpenProject。

这时自动打开Visual Studio,右键解决方案,生成解决方案开始构建。    

          

下面是漫长的等待。

          

看到生成成功,并且没有什么报错,就成了。    

然后右键解决方案管理器中的INSTALL,点击生成,执行make install。这样把编译好的文件安装到设置的install目录。

5、测试  

现在构建就完成了,可以运行一下DRAWEXE测试功能是否正常。    

右键DRAWEXE下拉菜单设为启动项目,然后CTRL+F5执行,在打开的命令行窗口中即可测试DRAWEXE命令。

参考文献

https://dev.opencascade.org/doc/overview/html/build_upgrade__building_occt.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1380721.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

maya , motionbuilder 骨骼动画相关操作与脚本

文章目录 Maya导入时增加namespacemaya 解除/增加父子关系maya 修改骨骼局部坐标系显示骨骼局部坐标系删除不需要的骨骼重命名骨骼重定向基础细节 Motionbuildermb同时打开两个动画文件 Maya 导入时增加namespace import pymel.core as pm pm.namespace(add"src") …

蓝桥杯省赛无忧 STL 课件16 set

01 set集合 修改set比较方法的常见手段&#xff0c;后面的multiset类似 #include<bits/stdc.h> using namespace std; int main() {set<int,greater<int>> myset;myset.insert(25);myset.insert(17);myset.insert(39);myset.insert(42);for(const auto&…

【Kafka-3.x-教程】-【三】Kafka-Broker、Kafka-Kraft

【Kafka-3.x-教程】专栏&#xff1a; 【Kafka-3.x-教程】-【一】Kafka 概述、Kafka 快速入门 【Kafka-3.x-教程】-【二】Kafka-生产者-Producer 【Kafka-3.x-教程】-【三】Kafka-Broker、Kafka-Kraft 【Kafka-3.x-教程】-【四】Kafka-消费者-Consumer 【Kafka-3.x-教程】-【五…

Binder 机制 javanative

一&#xff1a;Binder介绍 Binder是一套ipc通信方案 Binder框架定义了四个角色&#xff1a; Server &#xff0c;Client&#xff0c;ServiceManager &#xff08;以后简称SMgr&#xff09;以及Binder驱动。其中Server &#xff0c;Client&#xff0c;SMgr运行于用户空间&#…

SRM供应商招标采购管理系统(源码)

软件相关资料获取&#xff1a;点我获取 一、SRM供应商在线采购 SRM供应商在线采购是指企业通过互联网平台&#xff0c;实现对供应商的在线招募、选择、关系管理等一系列活动。这种采购方式具有高效、透明、便于管理的特点&#xff0c;能够帮助企业降低采购成本&#xff0c;提…

AI副业拆解:「一键解锁」告别熬夜赶PPT,AI大模型带你秒变高效演示达人!

今天&#xff0c;我注意到一条新闻报道&#xff0c;揭示了今年全球及国内科技企业正激烈竞争&#xff0c;纷纷借力大模型技术扩展各自的商业疆界。据统计&#xff0c;截至今年7月尾声&#xff0c;我国已累计推出了130个大模型项目&#xff0c;其中尤为显著的是&#xff0c;仅在…

华为设备VRRP配置

核心代码&#xff1a; 需要对所有虚拟路由器设置&#xff08;要进入到对应的端口&#xff09; vrrp vrid 38 virtual-ip 192.168.10.254 vrrp vrid 38 priority 120 vrrp vrid 38 track int g0/0/1 reduced 30①mac由vrid生成 ②指定虚拟ip ③虚拟ip作为内部主机的网关&#x…

软件测试|Python数据可视化神器——pyecharts教程(十)

使用pyecharts绘制漏斗图 简介 漏斗图&#xff08;Funnel Chart&#xff09;是一种用于可视化数据流程或转化率的图表类型。它通常由一系列阶段组成&#xff0c;每个阶段都有一个名称和一个值&#xff0c;表示在该阶段的转化量或数据流程的进展情况。漏斗图的名称来源于其外观…

OpenAI ChatGPT-4开发笔记2024-06:最简Embedding

Embedding embedding直译是&#xff1a;嵌入。和实际意思有些差距。其实就是把文本转换为向量表示的过程。用“向量化”更直接&#xff0c;但这又和tensor有点儿混。它是变成向量的一个过程。 embedding 的应用领域&#xff1a; 文本分类&#xff1a; 将文本嵌入转换为向量后…

HCIP-1

一、网络类型&#xff1a; 点到点 BMA&#xff1a;广播型多路访问 – 在一个MA网络中同时存在广播&#xff08;洪泛&#xff09;机制 NBMA&#xff1a;非广播型多路访问—在一个MA网络中&#xff0c;没有洪泛机制 MA&#xff1a;多路访问 在一个网段内&#xff0c;存在的节…

SQL Server 配置远程连接

Windows 安装好 SQL Server 的 SSMS,打开SSMS配置远程连接 找到 配置管理器 启用 TCP/IP 打开防火墙设置 新建入站规则 端口TCP - 特定本地端口 (1433)允许连接下一步名称完成 重启 SQL Server 服务

深入理解 Spark(二)SparkApplication 提交和运行源码分析

spark 核心流程 yarn-client yarn-cluster spark 任务调度 spark stage 级别调度 spark task 级别调度 失败重试和白名单 对于运行失败的 Task&#xff0c;TaskSetManager 会记录它失败的次数&#xff0c;如果失败次数还没有超过最大重试次数&#xff0c;那么就把它放回待调…

教育观察期刊投稿邮箱、投稿要求

《教育观察》创刊于2012年&#xff0c;是国家新闻出版总署批准的正规教育类学术期刊&#xff0c;本刊致力于在教育实践中以“观察”为方法&#xff0c;以“观察者”为主体&#xff0c;以“新观察”为旨趣&#xff0c;打造从教育实践中洞察教育未来的教育研究与交流的平台。主要…

软件测试|深入理解Python中的re.search()和re.findall()区别

前言 在Python中&#xff0c;正则表达式是一种强大的工具&#xff0c;用于在文本中查找、匹配和处理模式。re 模块提供了许多函数来处理正则表达式&#xff0c;其中 re.search()和 re.findall() 是常用的两个函数&#xff0c;用于在字符串中查找匹配的模式。本文将深入介绍这两…

【WEB API自动化测试】接口文档与在线测试

这一篇我们主要介绍如何做API帮助文档&#xff0c;给API的调用人员介绍各个 API的功能, 输入参数&#xff0c;输出参数, 以及在线测试 API功能(这个也是方便我们自己开发调试) 我们先来看看我们的API最终帮助文档及在线测试最终达到的效果: 概要图 GET API 添加产品API: 删除…

电影开场后也能退票,“电影仅退款”能治烂片病吗?

1月11日&#xff0c;“#电影开场后也能退票了#”词条登上微博热搜。 根据央视六套《中国电影报道》&#xff0c;从今年元旦开始&#xff0c;湖南长沙部分影院开启了新型电影保险模式的试点。 在电影开场后30分钟以内&#xff0c;市民如果对电影内容不满意&#xff0c;可借助小…

超维空间S2无人机使用说明书——61、ROS无人机4G远程控制

4G模块使用说明 引言&#xff1a;为了实现对无人机的远程控制&#xff0c;我们采用了4G通信的方案&#xff0c;该方案需要硬件以及相关软件的支持。4G通信是可选择功能&#xff0c;请确认无人机型号是否选配了4G通信。 一、4G通信方案 我们的4G通信主要通过两种方式实现&…

软件测试|如何实现字典的键值互换,你会了吗?

简介 在Python中&#xff0c;字典是一种非常有用的数据结构&#xff0c;它将数据存储为键值对&#xff0c;并且键必须是唯一的。有时候&#xff0c;我们可能需要将字典的键和值互换&#xff0c;以便查找或操作数据更加方便。本文将详细介绍如何在Python中实现字典键值的互换操…

Flink(十二)【容错机制】

前言 最近已经放假了&#xff0c;但是一直在忙一个很重要的自己的一个项目&#xff0c;用 JavaFX 和一个大数据组件联合开发一个功能&#xff0c;也算不枉我学了一次 JavaFX&#xff0c;收获很大&#xff0c;JavaFX 它作为一个 GUI 开发语言&#xff0c;本质还是 Java&#xff…

Servlet-体系结构

一、思考 读者阅读完上一篇关于Servlet基本概念的文章后&#xff0c;我们知道每次实现一个Servlet&#xff0c;都需要覆盖五个接口&#xff0c;我们对除service接口外的其它四个接口&#xff0c;我们通常不会做什么处理。那么&#xff0c;这种实现方式是否有些繁琐呢&#xff…