使用 Electron 编译 node.js 版本时出现问题

     2023-03-07     38

关键词:

【中文标题】使用 Electron 编译 node.js 版本时出现问题【英文标题】:Problems compiling node.js version with Electron 【发布时间】:2019-10-30 23:43:24 【问题描述】:

我正在尝试使用 10.16.0 node js 版本运行电子项目,但出现错误。 我正在使用这个库https://github.com/pokusew/nfc-pcsc

我已尝试采用另一个与 10.16.0 node.js 一起正常工作的 Electron 版本,但没有工作。

    "@pokusew/pcsclite": "^0.5.2",
    "electron-version": "^2.0.1"
  ,
  "devDependencies": 
    "@babel/cli": "^7.4.4",
    "@babel/core": "^7.4.5",
    "@babel/plugin-proposal-class-properties": "^7.4.4",
    "@babel/plugin-syntax-object-rest-spread": "^7.2.0",
    "@babel/plugin-transform-modules-commonjs": "^7.4.4",
    "@babel/register": "^7.4.4",
    "ava": "^2.0.0",
    "chalk": "^2.4.2",
    "cross-env": "^5.2.0",
    "electron": "^5.0.4",
    "mock-require": "^3.0.3",
    "triple-beam": "^1.3.0",
    "winston": "^3.2.1"
  

https://i.imgur.com/UhSjlo6.png“错误”

【问题讨论】:

【参考方案1】:

您需要包含 electron-rebuild 包,该包根据您的 Electron 项目正在使用的 Node.js 版本重建本机 Node.js 模块。这允许您在 Electron 应用程序中使用本机 Node.js 模块,而无需与您的系统版本完全匹配。

您可以使用以下命令安装此软件包,

npm install --save-dev electron-rebuild

然后,每当您安装新的 npm 包时,重新运行 electron-rebuild:

$(npm bin)/electron-rebuild

或者,如果您使用的是 Windows:

.\node_modules\.bin\electron-rebuild.cmd

您甚至可以在“脚本”部分创建一个别名为“重建”,您可以在需要时使用它。

"scripts": 
  "rebuild": "electron-rebuild -f -w yourmodule"

添加上述内容后,您可以使用以下命令,

npm run rebuild

希望这会有所帮助!

【讨论】:

当我这样做时出现此错误。\node_modules\.bin\electron-rebuild.cmd An unhandled error occurred inside electron-rebuild Los proyectos de esta soluci n se van a compilar de uno en uno. Para habilitar la compilaci n en paralelo, agregue el modificador "/m". addon.cpp pcsclite.cpp cardreader.cpp win_delay_load_hook.cc c:\users\terro\.electron-gyp\5.0.4\include\node\v8.h(4458): warning C4996: 'v8::WasmModuleObject::SerializedModule': se declar desusado (compilando archivo de origen ..\src\addon.cpp) [C:path\nfc\nfc-pcsc\node_modules\@pokusew\pcsclite\build\pcsclite.vcxproj] 如果不清楚我想说什么,这是主要错误× Rebuild Failed An unhandled error occurred inside electron-rebuild 您可以尝试在命令提示符中输入此命令吗? => set env GYP_MSVS_VERSION=2015 并重新运行 electron-rebuild ? 现在我遇到了另一个问题An unhandled error occurred inside electron-rebuild gyp info it worked if it ends with ok 好的。您能否一一尝试这些命令 => npm uninstall --save electron 完成后.. 发出此命令 => npm install --save electron@latest 然后尝试运行 electron-build 看看它是否有效。

使用electron构建跨平台node.js桌面应用经验分享

...制作的小工具给做成了可视化操作的桌面软件,使用的是electron,这里简单分享一下使用electron的一些经验和心得。一、如何使用electron把基本的 查看详情

使用 NODE_MODULE_VERSION 64 针对不同的 Node.js 版本编译。此版本的 Node.js 需要 NODE_MODULE_VERSION 67

】使用NODE_MODULE_VERSION64针对不同的Node.js版本编译。此版本的Node.js需要NODE_MODULE_VERSION67【英文标题】:compiledagainstadifferentNode.jsversionusingNODE_MODULE_VERSION64.ThisversionofNode.jsrequiresNODE_MODULE_VERSION67【发布时间】:2019-12-0301:09: 查看详情

Node - 使用 NODE_MODULE_VERSION 72 针对不同的 Node.js 版本进行编译

】Node-使用NODE_MODULE_VERSION72针对不同的Node.js版本进行编译【英文标题】:Node-wascompiledagainstadifferentNode.jsversionusingNODE_MODULE_VERSION72【发布时间】:2020-12-2200:20:39【问题描述】:我正在开发一个节点应用程序。我必须与robotjs一起工... 查看详情

bindings.node' 是针对不同的 Node.js 版本使用 NODE_MODULE_VERSION 93 编译的。此版本的 Node.js 需要 NODE_MODULE_VERSION 89

】bindings.node\\\'是针对不同的Node.js版本使用NODE_MODULE_VERSION93编译的。此版本的Node.js需要NODE_MODULE_VERSION89【英文标题】:bindings.node\'wascompiledagainstadifferentNode.jsversionusingNODE_MODULE_VERSION93.ThisversionofNode.jsrequiresNODE_MO 查看详情

NPM 模块画布是使用 NODE_MODULE_VERSION 88 针对不同的 Node.js 版本编译的

】NPM模块画布是使用NODE_MODULE_VERSION88针对不同的Node.js版本编译的【英文标题】:NPMmodulecanvaswascompiledagainstadifferentNode.jsversionusingNODE_MODULE_VERSION88【发布时间】:2021-04-1815:21:21【问题描述】:我正在尝试使用canvas的NPM版本以及mergei... 查看详情

初识electron开发桌面应用(代码片段)

Electron是什么?Electron基于Chromium和Node.js,让你可以使用HTML,CSS和JavaScript构建跨平台(mac/window/linux)桌面应用。Electron开发环境的搭建首先安装node环境(点击跳转到老张的另外一个文章,这里推荐使用nvm更好的... 查看详情

electron——electron的安装和简单使用(代码片段)

...ode.js可以参考Mac环境下安装Node.js。2安装npm安装NPM。3安装electron安装electron。npminstall--save-develectron报错:$npminstall--save-develectron>core-js@3.17.2postinstall/Users/yuhaidong/studying/electron/my-electron-app/node_modules/core-js>node-e"tryrequire... 查看详情

electron基础(代码片段)

1.Electron是什么?使用github开发的开源框架允许开发者使用Web(js,html,css)技术构建跨平台的桌面应用Electron=Chrominum+node.js+NativeAPI高效:通过Web技术写UI能力:底层能力能力&体验:跨平台&原生能力2.Chromium+NodejsChromium架构Chrom... 查看详情

使用electron开发pc客户端----入门篇

参考技术AElectron,使用JavaScript,HTML和CSS构建跨平台的桌面应用,利用Web技术JavaScript、HTML和CSS开发跨平台(Mac,Windows和Linux系统)桌面应用的开源框架,最初是Github发布的Atom编辑器衍生出的AtomShell,后更名为Electron。可以将electro... 查看详情

是否可以强制 Node.js / Electron 应用程序以编程方式使用高性能(离散)GPU?

】是否可以强制Node.js/Electron应用程序以编程方式使用高性能(离散)GPU?【英文标题】:IsitpossibletoforceNode.js/Electronapptousehigh-performance(discrete)GPUprogrammatically?【发布时间】:2021-11-2812:09:02【问题描述】:我有一个Electron应用程序... 查看详情

electron相关知识以及实践(代码片段)

目录1、Electron背景介绍2、Windows开发环境配置3、打造第一个Electron应用4、安装Electron5、开发一个简易的Electron6、了解electron-vue7、安装vue-cli8、生成样板代码9、安装yarn10、运行程序11、了解node-gyp12、安装node-gyp13、项目中可能出现... 查看详情

electron+vue的使用

参考技术AElectron相当于一个浏览器的外壳,可以把网页程序嵌入到壳里面,可以运行在桌面上的一个程序,可以把网页打包成一个在桌面运行的程序,通俗来说就是软件,比如像QQ、优酷、网易音乐等等。功能的强大超出你的想... 查看详情

修改electron的libcc(libchromiumcontent)源码,重新编译electron,设置event.istrusted为true

...,否者chromium的源代码无法下载,后面会出现总总问题  Electron的编译环境,推荐使用物理机:  win1064位英文版,为了避免后期出现编译文件,推荐使用64为的win10  node-v6.11.0-x64,node版本最好在6.x,高版本的可能编译不成功... 查看详情

注意electron的error:adynamiclinklibrary(dll)initializationroutinefailed(代码片段)

把dll的load放在Electron中,就会报一个错:Error:Adynamiclinklibrary(DLL)initializationroutinefailed这显然就是dll没有加载成功,为什么在Node中已经试过没问题的方法会在Electron中出问题,我此刻内心是惶恐的,因为Electron是我们最终的javascript... 查看详情

在centos6下使用nvm安装node.js

在CentOS6中通过yum安装gcc的版本是4.4.7,在编译安装Node.js的时候会提示gcc版本过低导致编译失败WARNING:C++compilertooold,needg++4.8orclang++3.4(CXX=g++)事实上,不光是gcc版本过低,还可能出现py版本过低,或者py识别不了bz2之类的问题。那么... 查看详情

electron——electron的安装和简单使用(代码片段)

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/120140142本文出自【我是干勾鱼的博客】1安装node.js可以参考Mac环境下安装Node.js。2安装npm安装NPM。3安装electron安装electron。npminstall--save-develectron报错:$npminstal 查看详情

如何使用lessc编译.less文件

LESS:一种动态样式语言。LESS将CSS赋予了动态语言的特性,如变量,继承,运算,函数.LESS既可以在客户端上运行(支持IE6+,Webkit,Firefox),也可以借助Node.js或者Rhino在服务端运行。在介绍如何通过lessc(less源码编译器)把编写好的.l... 查看详情

node桌面应用开发

1、node桌面应用开发的框架:electron 和 nw.js   https://www.jianshu.com/p/c6bdb087e60d2、使用electron构建跨平台Node.js桌面应用 : https://www.zhangxinxu.com/wordpress/2017/05/electron-node-js 查看详情