OpenCascade编译

OpenCASCADE的编译 

The Installation and Compilation of OpenCASCADE

eryar@163.com

一、 安装OpenCASCADE

可以从OpenCASCADE的官网上下载其安装包,可以选择最新的版本,下载网址为:

http://www.opencascade.org/getocc/download/loadocc/ 。如果只用其库来编程已经够了,安装好下载的安装包即可。若想对其进行调试,必须先把它编译成功。想编译通过,必须下载第三方库,因为OpenCASCADE中用到了第三方的工具,有些库是可选的,有些是必须的。如:FreeImage为通用图形格式的支持;FreeType和Ftgl为对文字渲染的支持,包括对中文渲染的支持;gl2ps用来将渲染的内容转换为矢量图形输出,等等。第三方库都可以从官网上提供的链接来下载,因为不同的版本可能用到的第三方库的版本也不同,必须保持一致。下载地址为:

http://www.opencascade.org/getocc/download/3rdparty/ 。对于Windows操作系统下载各相应版本如下所示:

Windows

Products

vc8

vc9

vc10

vc11

32 bit

64 bit

32 bit

64 bit

32 bit

64 bit

32 bit

64 bit

 Freeimage 3.14.1

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 Freetype 2.3.7

 zip

 zip

 zip

 zip

 zip

 zip

 Freetype 2.4.10

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 Ftgl 2.1.2

 zip

 zip

 zip

 zip

 zip

 zip

 Ftgl 2.1.3

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 gl2ps 1.3.5

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 zip

 Qt

 Qt 4.6.2

 TBB

 TBB 3.x or 4.x

 Tcl/Tk

 ActiveTcl 8.5 or 8.6

不同的Visual Studio及不同的CPU位数应选择对应的第三方库进行编译。

有的时候编译通不过,可能报的错误就是第三方库的版本与安装好的OpenCASCADE的版本不一致造成的。把与编译工具相应版本的第三方库重新编译并放到相应的目录下就可解决问题。这也是OpenCASCADE推荐的方法,原文如下:The recommended way to do this is to download each of the third-party tools from its web site and build it using the relevant tools.

二、 编译OpenCASCADE

OpenCASCADE6.5.0以后对编译环境的设置采用了批处理的方式。在安装完毕后的文件目录中有个ros的文件夹,其中有几个批处理文件:env.bat、env_build.bat、msvc.bat。打开这几个批处理文件,会发现它们就是在设置编译环境。早期版本是直接写到系统的环境变量中去,现在是运行批处理文件msvc.bat,根据不同的工具,输入以下参数,示例为:vc8 win32 Debug adm\win32\vc8\OCCT.sln。即运行命令切换到ros文件夹,输入下面的命令:msvc.bat vc8 win32 Debug adm\win32\vc8\OCCT.sln就可以启动整个项目,后面是一些选项设置,如使用的是VC8编译工具,平台为win32,输出为Debug。若是使用的Visual Studio 10则输入参数vc10 win32 Debug adm\win32\vc10\OCCT.sln即可,也很方便。

编译顺序也是非常重要的,必须按如下顺序进行:

1. Foundation Classes (file FoundationClasses.sln)

2. Modeling Data (file ModelingData.sln)

3. Modeling Algorithms (file ModelingAlgorithms.sln)

4. Visualization (file Visualization.sln)

5. Application Framework (file ApplicationFramework.sln) 

6. Data Exchange (file DataExchange.sln)

7. Draw (file Draw.sln)

 其实编译整个解决方案时,会自动按顺序编译的。

三、 总结

编译成功后,可以为以后程序的调试打下基础;也可对OpenCASCADE有个大概认识。希望你也能编译成功。若有任何问题,可与我联系:eryar@163.com

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )