#2020征文-开发板#DevECO IDE环境搭建及常见问题解决办法
我介绍了如何使用WSL搭建一个编译环境(下图中的Linux compile server)。这次完成在windows上搭建代码的开发调试环境,Wiofi iot的开发环境终于完整了。
我整理了需要下载的所有软件包,方便大家批量下载。如下表:
1.开发环境搭建&使用原本打算详细记录一下,实际操作中发现根本不需要。官方的文档写的比较详细。
这里只记录我遇到的问题及处理方法。估计大家也会遇到,遇到问题的时候回来查看一下就好
问题1:使用IDE 烧写时报错
·现象
IDE控制台报错如下:
hpm : 无法加载文件 C:\Users\用户名\AppData\Roaming\npm\hpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中
的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ hpm run 'upload'
+ ~~~
+ CategoryInfo : SecurityError: (:) [],PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
The terminal process "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
解决办法:
管理员运行PowerShell
输入set-ExecutionPolicy RemoteSigned
问题2:IDE无法刷新出串口号,不断要求安装串口组件现象
IDE不断弹出需要安装serialport的窗口
Burn设置中无法选择串口端口号
终定位发现是node-gyp有一个库不对。 能直接确认这个问题的现象是,当你卸载serialport重新安装时报错:
PS C:\WINDOWS\system32> npm uninstall -g serialport
...
PS C:\WINDOWS\system32> npm install -g serialport
> @serialport/bindings@9.0.2 install C:\Users\dxb\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings
> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
prebuild-install WARN install No prebuilt binaries found (target=12.19.0 runtime=node arch=x64 libc= platform=win32)
C:\Users\用户名\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
在此解决方案中一次生成一个项目。若要启用并行生成,请添加“/m”开关。
serialport.cpp
serialport_win.cpp
win_delay_load_hook.cc
C:\\Users\\用户名\\AppData\\Local\\node-gyp\\Cache\\12.19.0\\x64\\node.lib : fatal error LNK1107: 文件无效或损坏: 无法在 0x541B04 处读
取 [C:\Users\dxb\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings\build\bindings.vcxproj]
上面报错中提到,如下文件被损坏了: C:\Users\用户名\AppData\Local\node-gyp\Cache\12.19.0\x64\node.lib
解决办法
在node官网下载正确的lib库,替换到你的环境中。下载地址https://nodejs.org/dist/v12.19.0/win-x64/
注意12.19.0是nodejs的版本,你需要找自己对应的版本
替换后重新安装serialport就可以了。
问题3:烧写时报错MODULE_NOT_FOUND
现象
启动烧写后控制台报错
> Executing task: hpm run 'upload' <
internal/modules/cjs/loader.js:834
throw err;
^
Error: Cannot find module 'D:\HarmonyOSWorkspace\%UPLOAD_SCRIPT%'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:831:15)
at Function.Module._load (internal/modules/cjs/loader.js:687:27)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:60:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
The terminal process "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
解决方法
用文本编辑器打开文件C:\Users\用户名.hpm\hpmrc
可能显示如下,注意第二行,这里多了一个空行
registry = https://hpm.harmonyos.com
globalRepo = C:\Users\dxb\.hpm\global
strictSsl = true
shellPath = C:\WINDOWS\system32\cmd.exe
删除掉其中多余的空行、保存、然后重新启动IDE。