vue-cli-plugin-electron-builder
vue-cli-plugin-electron-builder copied to clipboard
Electron does not launch on Raspberry Pi 64-bit (arm64)
Describe the bug
Raspberry Pi 5 utilising Raspberry Pi OS (64-bit) does not launch electron windows.
When performing vue-cli-service electron:serve, command window states "launching electron..." and "Done". There is no other output, and results in a zero exit code.
When building the same application using vue-cli-service electron:build -- --arm64, launching the AppImage results in "segmentation fault" with error code 139.
To Reproduce Steps to reproduce the behavior: Create example vue: "vue create example_app" Add vue-cli-plugin-electron-builder: "vue add electron-builder"
Attempt to run example application with "yarn electron:serve"
Expected behavior A clear and concise description of what you expected to happen. Electron window starts, arm64 build of AppImage runs without segmentation fault.
Screenshots
If applicable, add screenshots to help explain your problem.
Unsure if this is helpful, but the following output is where the AppImage stops when ran with lldb:
Environment (please complete the following information):
- custom config for vcp-electron-builder:
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,
configureWebpack:{
devtool: 'source-map'
}
})
- (if possible) link to your repo: N/A - use example app with "vue create" and "vue add electron-builder"
- terminal output from running
vue info
:
Environment Info:
System:
OS: Linux 6.6 Debian GNU/Linux 12 (bookworm) 12 (bookworm)
CPU: (4) arm64 Cortex-A76
Binaries:
Node: 16.14.0 - ~/.config/nvm/versions/node/v16.14.0/bin/node
Yarn: 1.22.22 - ~/.config/nvm/versions/node/v16.14.0/bin/yarn
npm: 8.3.1 - ~/.config/nvm/versions/node/v16.14.0/bin/npm
Browsers:
Chrome: Not Found
npmGlobalPackages:
@vue/cli: 5.0.8
Additional output from lspcu:
Architecture: aarch64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Vendor ID: ARM
Model name: Cortex-A76
Model: 1
Thread(s) per core: 1
Core(s) per cluster: 4
Socket(s): -
Cluster(s): 1
Stepping: r4p1
CPU(s) scaling MHz: 62%
CPU max MHz: 2400.0000
CPU min MHz: 1500.0000
BogoMIPS: 108.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp
asimdhp cpuid asimdrdm lrcpc dcpop asimddp
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: Not affected
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Mmio stale data: Not affected
Retbleed: Not affected
Spec rstack overflow: Not affected
Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl
Spectre v1: Mitigation; __user pointer sanitization
Spectre v2: Mitigation; CSV2, BHB
Srbds: Not affected
Tsx async abort: Not affected
uname -r output:
6.6.20+rpt-rpi-2712
package.json:
{
"name": "vue_electron_example",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"electron:build": "vue-cli-service electron:build",
"electron:build:arm": "vue-cli-service electron:build -- --arm64",
"electron:serve": "vue-cli-service electron:serve",
"postinstall": "electron-builder install-app-deps",
"postuninstall": "electron-builder install-app-deps"
},
"main": "background.js",
"dependencies": {
"core-js": "^3.8.3",
"vue": "^3.2.13"
},
"devDependencies": {
"@babel/core": "^7.12.16",
"@babel/eslint-parser": "^7.12.16",
"@vue/cli-plugin-babel": "~5.0.0",
"@vue/cli-plugin-eslint": "~5.0.0",
"@vue/cli-service": "~5.0.0",
"electron": "^13.0.0",
"electron-devtools-installer": "^3.1.0",
"eslint": "^7.32.0",
"eslint-plugin-vue": "^8.0.3",
"vue-cli-plugin-electron-builder": "~2.1.1"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/vue3-essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "@babel/eslint-parser"
},
"rules": {}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead",
"not ie 11"
]
}