无法使用golang编写node native addon给electron干活

首先文章编辑于2022-03-22,以后不知道什么样,我也不懂c/c++这些东西,都是看别人的讨论
本来,通过go build -buildmod=c-shared的方式打出动态链接库的方式给c调用,然后使用c写node-addon的方式,go是可以间接被nodejs调用的, *** 但是 ***,这样的方式在windows上不成功,仅在macos和linux可以

具体原因

在windows上node-gyp rebuild会因为cgo失败

node-gyp在windows只支持msvc编译,不支持minGW msys等GNU类编译器的编译出的的东西, 导致go build出来的含有cgo的动态链接没法用,在node-gyp build的时候不通过(go build出来的头文件里还含有c99标准的代码,msvc不完全支持c99标准)

相关讨论
Support for mingw/msys/cygwin for node-gyp
Using cgo built DLL on Visual Studio Project
cmd/link: support msvc object files
cgo-generated-sources-fail-to-compile-on-mvc

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容