Closed Luohl520 closed 8 months ago
可以的,我会加一个windows arm架构的版本出来。大概下午会发出来。
不过我只有x64芯片的设备,如果后续还是有问题估计需要你自己按照文档编译了。
可以的,我会加一个windows arm架构的版本出来。大概下午会发出来。
不过我只有x64芯片的设备,如果后续还是有问题估计需要你自己按照文档编译了。
好的,你发布后我将测试
@Luohl520 最新 Release v2.6.2 版本提供了 Windows arm64 架构的安装包,有时间的话麻烦安装测试一下,非常感谢 🙏
@Luohl520 最新 Release v2.6.2 版本提供了 Windows arm64 架构的安装包,有时间的话麻烦安装测试一下,非常感谢 🙏
测试还是打不开呢,双击后没有反应
麻烦看一下是否存在%HOMEPATH%.nvmd目录,如果有,该目录下migration文件的内容可以提供一下吗。
如果这些文件都存在说明主进程运行时成功的,那就应该是在x64设备上编译出的arm64的包还是存在兼容性问题。如果是这样的话可能需要你这边根据文档自己编译一下了。抱歉啊。
麻烦看一下是否存在%HOMEPATH%.nvmd目录,如果有,该目录下migration文件的内容可以提供一下吗。
如果这些文件都存在说明主进程运行时成功的,那就应该是在x64设备上编译出的arm64的包还是存在兼容性问题。如果是这样的话可能需要你这边根据文档自己编译一下了。抱歉啊。
没有找到nvmd目录呢
稍等我下午再重新编译一下。
windows-on-arm 按照文档应该是不需要做一些特殊处理的(nvm-desktop没有本机依赖)。
x64平台交叉编译arm64还是存在问题,等我以后有arm64的设备之后再上传对应的安装包。抱歉。
在此之前你可以根据文档 Develop-and-build 在本地自己编译。谢谢。
我在windows x64 下想打包 windows on arm 的可执行程序,报错,
请问我应该怎么处理
打包windows x64 是OK的。
develop-and-build 文档这里我没有更新不好意思 最新的代码是需要将 "./assets/sources/nvmd.exe"
重命令为 "./assets/sources/{arch}.exe"
,也就是说如果打包x64就是 "./assets/sources/x64.exe"
arm64就是 "./assets/sources/arm64.exe"
其他的就都一样
抱歉 没有更新文档 后续我会更新一下
develop-and-build 文档这里我没有更新不好意思 最新的代码是需要将
"./assets/sources/nvmd.exe"
重命令为"./assets/sources/{arch}.exe"
,也就是说如果打包x64就是"./assets/sources/x64.exe"
arm64就是"./assets/sources/arm64.exe"
其他的就都一样抱歉 没有更新文档 后续我会更新一下
我还没有到那一步,我现在是rust 编译可执行文件报错,cargo build --target aarch64-pc-windows-msvc,这个 报错
除了安装 aarch64-pc-windows-msvc 的target 然后还需要在 VS 中安装对应架构的 c++ 编译工具 你应该需要安装 x64 的
或者你可以使用我已经编译好的 https://github.com/1111mp/nvmd-command/releases/tag/v2.6.2
targe
我已将按照要求安装了 编译工具,
执行cargo build --target aarch64-pc-windows-msvc 依然报错,
执行 cargo build --release 正常打包完成
也许应该使用你打包出来的文件吧。
这是我电脑上VS的 看起来应该没什么问题 安装结束之后电脑重启了吗
cargo build --release 命令是会根据电脑的platform和arch来打包的 跨平台需要指定 --target
你也可以从这里获取一些有用的信息:using_rust_on_windows_for_arm
我在windows server 2012 上成功编译出 Arm版可执行文件,开始执行yarn start 命令时是可以正常执行的,程序也正常启动了的,然后我就打包yarn run package,打包时就报错了,
然后我再次执行 yarn start 也不可以了,报上面一样的错
我是哪里环境变量不对吗?
你本地的node是通过nvm-desktop
安装的对吧 那么你先查看一下 %HOMEPATH%\.nvmd\bin
目录下的文件是否齐全(maybe-somethings-you-need-to-know)
或者终端输入 node --version
npm --version
看是否都正常
或者重启一下终端呢
你本地的node是通过
nvm-desktop
安装的对吧 那么你先查看一下%HOMEPATH%\.nvmd\bin
目录下的文件是否齐全(maybe-somethings-you-need-to-know)或者终端输入
node --version
npm --version
看是否都正常或者重启一下终端呢
有些文件丢失了,npm也出问题了
按照你的截图 你的node应该不是在.nvmd\bin
下 试试运行 where node
查看一下真实的路径呢
然后你把.nvmd
整个目录删掉重新安装node 再编译试试
按照编译文档:https://github.com/1111mp/nvm-desktop?tab=readme-ov-file#develop-and-build 你需要创建这两个文件:"./assets/sources/x64.exe" & "./assets/sources/arm64.exe" 就是nvmd.exe 重命名为 x64.exe
& arm64.exe
按照你的截图 你的node应该不是在
.nvmd\bin
下 试试运行where node
查看一下真实的路径呢然后你把
.nvmd
整个目录删掉重新安装node 再编译试试按照编译文档:https://github.com/1111mp/nvm-desktop?tab=readme-ov-file#develop-and-build 你需要创建这两个文件:"./assets/sources/x64.exe" & "./assets/sources/arm64.exe" 就是nvmd.exe 重命名为
x64.exe
&arm64.exe
打包还是不行
这个错误好像跟项目没关系 是系统环境的问题吧 你试试这里的方法对你有用吗: https://stackoverflow.com/questions/59562969/error-spawn-cmd-enoent-while-starting-react-app
Goto > Control Panel\System and Security\System\Advance system setting\Enviroment variable and set system variables path C:\Windows\System32\ variable and restart your System.
这个错误好像跟项目没关系 是系统环境的问题吧 你试试这里的方法对你有用吗: https://stackoverflow.com/questions/59562969/error-spawn-cmd-enoent-while-starting-react-app
Goto > Control Panel\System and Security\System\Advance system setting\Enviroment variable and set system variables path C:\Windows\System32\ variable and restart your System.
上面环境变量添加 C:\Windows\System32\ 就可以了。
我现在编译出了 winX64版本,请问怎么编译arm64呢
Command Line Interface 这里是 electron-builder
的文档,如果你本地是main
分支下最新的代码的话,运行yarn run package
应该会打包出 x64
& arm64
的包的,具体配置:package.json#L199
"win": {
"target": [
{
"target": "nsis",
"arch": [
"x64",
"arm64"
]
}
],
"requestedExecutionLevel": "requireAdministrator"
},
Command Line Interface 这里是
electron-builder
的文档,如果你本地是main
分支下最新的代码的话,运行yarn run package
应该会打包出x64
&arm64
的包的,具体配置:package.json#L199"win": { "target": [ { "target": "nsis", "arch": [ "x64", "arm64" ] } ], "requestedExecutionLevel": "requireAdministrator" },
好消息是 我在arm 版win上 yarn start 成功运行了起来
坏消息是 yarn run package 打包出来的文件依旧是安装后打不开
你在终端运行 start your_floder\nvm-desktop.exe
试试报什么错
你打包的时候 ./assets/sources/
目录下有 x64.exe
& arm64.exe
& temp.cmd
文件吗 (node的 import { platform, arch } from 'node:process';
arch在arm平台上的值是 arm64
吗 我担心是 arm
如果是arm
的话 那么arm64.exe
需要改成 arm.exe
)
你可以查看 %HOMEPATH%\.nvmd
目录下文件都否都存在 migration
文件的内容是否为 8
你在终端运行
start your_floder\nvm-desktop.exe
试试报什么错你打包的时候
./assets/sources/
目录下有x64.exe
&arm64.exe
&temp.cmd
文件吗 (node的import { platform, arch } from 'node:process';
arch在arm平台上的值是arm64
吗 我担心是arm
如果是arm
的话 那么arm64.exe
需要改成arm.exe
)你可以查看
%HOMEPATH%\.nvmd
目录下文件都否都存在migration
文件的内容是否为8
`migration=8
https://tencentcloud.csdn.net/65979e91dafaf23eeaee4394.html
试试这个呢
或者这里:https://github.com/electron/electron/issues/32074
试试start nvm-desktop.exe --disable-gpu-sandbox
https://tencentcloud.csdn.net/65979e91dafaf23eeaee4394.html
试试这个呢
试试start nvm-desktop.exe --disable-gpu-sandbox
### 好消息现在已经可以正常使用了
在 package.json 文件中
"win": { "target": [ { "target": "nsis", "arch": [ "x64", "arm64" ] } ], "requestedExecutionLevel": "requireAdministrator" },
将 "requestedExecutionLevel" 删除,或者值设置为 highestAvailable or asInvoker 经测试都是可以正常运行的。
所以 后面我想你应该知道怎么做了。
最后给你看下我的所谓 Arm版windows电脑,其实是小米pad 5,没想到吧,哈哈。
好的,非常感谢,特别是花了这么长时间去测试啊,后续我会调研一下为什么申请admin权限会造成启动奔溃的问题,所以现在结论是你在x64架构下打出的arm64包可以正常启动对吗
https://github.com/electron-userland/electron-builder/issues/7566 这里应该讲清楚了原因
yarn run package
之前是在Arm架构下打的包,可以正常运行,我又特地在X64架构下打了包,复制到arm架构下测试,是能够正常运行的,且因为window11 可以转译运行64程序,所以X64的的包也是可以运行的,只是相对于原生Arm64 会有性能损失。
当设置成highestAvailable之后运行,会提示申请管理员权限吗,因为nvm-deaktop需要申请管理员权限运行(第一次安装的时候添加系统环境变量的命令),还是自动降级为普通的用户权限。
当设置成highestAvailable之后运行,会提示申请管理员权限吗,因为nvm-deaktop需要申请管理员权限运行(第一次安装的时候添加系统环境变量的命令),还是自动降级为普通的用户权限。
没有提示,但是我看安装后环境变量有添加,能正常启动,是不是降级运行我不清楚
好的 最后麻烦你测试一下呢 就是将 %HOMEPATH%\.nvmd
整个目录全部删除 同时删除系统环境变量 然后再启动 nvm-desktop
测试一下写入环境变量是否正常 (因为担心是之前你本地通过 yarn run start 启动项目写入的)
我稍后也会在windows x64 上测试一下,但是目前不太方便
真的非常感谢 🙏
好的 最后麻烦你测试一下呢 就是将
%HOMEPATH%\.nvmd
整个目录全部删除 同时删除系统环境变量 然后再启动nvm-desktop
测试一下写入环境变量是否正常 (因为担心是之前你本地通过 yarn run start 启动项目写入的)我稍后也会在windows x64 上测试一下,但是目前不太方便
真的非常感谢 🙏
.nvmd目录删除,环境变量删除,重新打开程序,目录自动创建,环境变量自动添加,程序正常运行
好的 谢谢 🌹
有可能支持Arm版windows系统吗,现在的情况是能安装但是打不开