当前位置: 首页 > Linux

麒麟操作系统(kylinos)从入门到精通-研发环境-第49章Electron软件打包

时间:2023-04-06 12:01:44 Linux

0.基础环境类:笔记本型号:中华长城NF14C硬件平台:飞腾处理器(ArmV8指令集)系统:银河麒麟操作系统systemV10SP1(2203)关键词:信创,麒麟系统,linux,c++,c,Phytium,arm,electron,npm,nvm,nodejs1。背景目前为了支持国产软硬件平台,跨平台,在平台技术方面,主要可能的选择有QT,基于web技术的electron等,尤其是electron让前端人员可以开发跨平台软件很好。无论是打包成deb还是exe,electron-builder都很好的支持。但是在实际操作中,在对飞腾ARM平台进行打包时,会出现错误。本文以electron-egg3.0为打包案例,为大家提供一个比较完整的electron在麒麟系统和飞腾处理器下的展示教程。2.Nodejs多版本管理考虑到nodejs升级速度快,不同开发者依赖的node版本可能不一致。我们会使用nvm-cli进行版本管理,可以根据项目需要切换版本。项目主页:https://github.com/nvm-sh/nvm2.1官方使用示例$nvmuse16Now使用nodev16.9.1(npmv7.21.1)$node-vv16.9.1$nvmuse14Now使用nodev14。18.0(npmv6.14.15)$node-vv14.18.0$nvminstall12Now使用nodev12.22.6(npmv6.14.5)$node-vv12.22.62.2安装1.执行安装脚本安装nvmcurl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh|bash或()wget-qO-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh|庆典2。安装切换nodenvminstall18#要安装的版本,可以指定18.5.0,只写18会拉取18系列的最新版本nvmuse18#将node切换到需要的版本2.3来检测node-v2。4安装一些全局组件sudoapt-getinstallbuild-essentiallibefl-all-devlibxss-dev-ynpminstall--location=globalyarn#安装yarn,后面也可以直接使用npminstall,不过yarn的机制比较多advanced,后续会以yarn为主。npminstall--location=globalnode-gyp#electron需要这个组件3.运行electron-egg假设你已经安装了git,如果没有,请自己准备。#sudoapt-getinstallgit3.1electron-egg简介一个易于上手、跨平台、企业级的桌面软件开发框架。基于electron的二次封装已经做了一些工作。3.2拉取项目代码gitclone-bv3.0.1https://gitee.com/dromara/electron-egg.git#v3.0.1是拉取指定版本,项目仓库里有这个tag3.3根据官方说明,前后端分别安装依赖,然后运行??3.3.1前端1.安装依赖库,进入前端目录,执行yarninstall--registry=https://registry.npm.taobao.org#使用淘宝镜像加速2.运行前端yarnserve#具体命令是什么?在pakcage.json中配置,在vscode中也可以操作,这里不做说明。运行成功后3.4.1后台1.安装依赖库,进入后台目录,执行yarninstall--registry=https://registry.npm.taobao.org#使用淘宝镜像加速后台运行yarndev#这个具体是在pakcage.json中配置了哪些指令,在vscode中也可以操作,这里就不多说了。运行成功后效果如下3.4打包项目electron使用electron-builder组件进行打包,在项目中已经配置好了。我们可以直接打包。yarnbuild-l-arm64#选择arm64下的linux包,输出为deb,会遇到一些错误。本文提供如下解决方案。遇到就解决,解决后再尝试打包。您也可以在执行包之前按以下解决问题。错误一:gyp出现ERR的主要原因可能是跨平台版本的软件包对arm支持不够好,所以用下面的方法来构建。解决方法:yarninstall--build-from-resource报错2:fpm格式不对。原因是electron拉的fpm是x86以下的,github项目上没有arm版本。解决方法(参考官方说明pdf和https://www.beekeeperstudio.io/blog/electron-apps-for-arm-and...):sudoaptupdatesudoaptinstallruby??ruby??-dev-ysudogeminstallfpmcd~/.cache/electron-builder/fpm/fpm-1.9.3-2.3.1-linux-X86_64/#版本可能不同,根据实际情况更改rm-rffpmln-s/usr/本地/bin/fpmfpm4。成品展示5.写在最后。在windows下,甚至在x86linux下,有些问题是不会遇到的。希望能给大家在arm平台上打包eletron应用一点参考。麒麟系统专栏:地址1:https://segmentfault.com/blog/kylinos邮箱:1179611323@qq.com群:662512340github:https://github.com/xiaohelongtwitter:https://twitter.com/xiaohelong发布日志:2023033113:30首次启动2023040110:27添加gyp安装方式