Windows系统使用EmscriptenSDK编译OpenCascade

1、准备工作

1)下载并安装EmscriptenSDK,官方教程或百度;
2)下载occ源码或安装包;
3)安装cmake;
4)安装gcc。

2、配置cmake生成Makefile文件

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

3、编译项目生成静态库文件 ***.a

进入Makefile文件所在位置,执行emmake make命令

在这里插入图片描述注意:
make过程可能会中断,报如下错误,再次执行emmake make命令即可。
在这里插入图片描述注意:
如果报错FT_EXPORT,如下图。找到宏定义,#define FT_EXPORT(x) __declspec(dllexport) x将其注释掉,启用extern "C"宏定义!!!

//#define FT_EXPORT(x)      __declspec(dllexport) x
#ifndef FT_EXPORT

#ifdef __cplusplus
#define FT_EXPORT( x )  extern "C"  x
#else
#define FT_EXPORT( x )  extern  x
#endif

#endif /* !FT_EXPORT */

在这里插入图片描述

4、基于静态库.a文件生成wasm和js文件

emcc -s “EXPORTED_FUNCTIONS=[’_myocc’]” xxx.a -o xxxxx.js
注意:
1、这里需要自己写导出方法,在cpp文件中使用extern “C”{} 声明方法的编译类型
2、“EXPORTED_FUNCTIONS=[’_myocc’]”,放着后处理器在生成wasm时把没有在main中用到的方法优化掉。【默认情况下main方法会自动导出,名为_main()】


版权声明:本文为Mengxy_2021原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。