occt-wasm配置——emsdk配置web版opencascade

本文详细介绍了如何配置和编译OCCT(OpenCASCADETechnology)的WebAssembly版本,包括安装git,EmscriptenSDK,MinGW,CMake,以及编译FreeType和OCC。在编译过程中,重点讲述了如何处理freetype和OpenCASCADE的依赖问题,最终成功生成WebGLSample的编译结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1、安装git

2、安装Emscripten SDK

1)下载:git clone https://github.com/emscripten-core/emsdk.git或者github上直接下载
2)在emsdk目录下,输入cmd命令:

emsdk install 2.0.29
emsdk activate 2.0.29
emsdk_env.bat

3)验证是否成功:emcc –check

3、安装MinGW

方法1:

下载安装Dev-C++工具,该工具里面直接附带了mingw,安装后将BIN文件夹增加到系统path。

方法2:

下载https://osdn.net/projects/mingw/
安装参考http://c.biancheng.net/view/8077.html

4、安装CMake

5、Emsdk编译FreeType

1)下载freetype源码

freetype官网:https://freetype.org/
下载地址:https://download.savannah.gnu.org/releases/freetype/freetype-old/

2)解压缩源码并配置编译

a.在源码文件夹建立一个build文件夹
在这里插入图片描述
b.命令行中激活emsdk
在这里插入图片描述

c.切换的build文件夹,并执行cmake进行配置emcmake cmake ..
在这里插入图片描述
d.进行编译emmake make
在这里插入图片描述
f.编译成功后进行install:emmake make install
在这里插入图片描述
安装目录如下图所示,该目录的内容在后续使用是可以直接找到:
在这里插入图片描述

6、编译OCC

1)使用Cmake界面进行,设置工具链
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2)修改下图两处内容,可忽略config中的警告
在这里插入图片描述
注意,此时freetype的设置中已经可以自动找到刚才的安装路径了
在这里插入图片描述
3)然后开始编译,如下emmake make
在这里插入图片描述
4)编译成功后进行install:emmake make install
在这里插入图片描述
4) 完成后,同样的,头文件和静态库等内容已经被安装到emsdk的默认目录下。

7、 编译WebGL Sample

1)使用cmake配置项目

通过下面命令启动cmake-gui,cmake的bin文件夹需要在path环境变量中
emcmake cmake-gui
在这里插入图片描述
在这里插入图片描述

2) 进行config

在这里插入图片描述

注意,在config的时候会出现如下错误,此时需要通过设置
“freetype_DIR”的路径来让cmake能够找到“freetype-config.cmake”文件,这样cmake就可以自动找到freetype模块了。

3)修改webgl sample源码中的CMakeLists.txt文件

目的是解决CMakeLists.txt文件中find_package()函数找不到freetype模块的问题。
find_package — CMake 3.22.2 Documentation
在这里插入图片描述
在这里插入图片描述
主要是使用set直接给出freetype的install根目录,再去除NO_DEFAULT_PATH参数,通过这样的修改后,再进行config,我们可以看到虽然有警告(find_package函数依然提示没有找到freetype库,但是实际上通过直接设置路径cmake已经可以找到了),但是FREETYPE的库环境找到了
在这里插入图片描述
此时针对OpenCASCADE又出现了类似freetype的错误

3) 指定OpenCASCADE_DIR

由于opencascade编译的时候存在OpenCASCADEConfig.cmake文件,因此只要指定相应的路径就可以了,如图,再进行config,就没有错误了
在这里插入图片描述
5)生成并编译
点击生成,并进行编译,如图所示
在这里插入图片描述
完成后,在下面的目录中就出现了编译后的结果
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值