鸿蒙设备开发环境搭建过程中遇到的问题与解决方法
一/概述:
鸿蒙设备开发环境分两部分:
编辑环境:目前是在windows环境下,采用开源的vscode+定制组件;
编译环境:目前是在linux环境下;
详细环境搭建步骤参照官方说明:https://device.harmonyos.com/cn/docs/ide/user-guides/tool_install-0000001050164976
介绍十分详细,但是相信不少人仍会像我一样踩到很多坑,以至于花费将近两周时间才得以填平!下面就对我踩过的坑做以说明,希望能帮到部分人。
二/ 编辑环境:
2.1 安装vscode,改变为中文环境——》点击扩展标签——》搜索chinese》点击安装 ;安装完毕后Ctrl+Shift+P,再搜索config,选择config display language ,在选择zh-cn ,然后重启即可
2.2 安装node-v12.19.0;即nodejs环境,通过官网下载速度比较慢,还经常掉线,我就下了一周才完成,建议通过国内网站下载,例如某某云。
2.3 安装JDK:安装完毕记得配置环境变量!建议通过国内网站下载;
2.4 安装hpm控件:(警告!这里有坑)估计相当一部分人都需要配置npm代理,因为现在的网络多数都是运营商的局域网:配置参考这里:https://jingyan.baidu.com/article/acf728fd99b16ff8e510a301.html
A: 首先,取消npm代理设置:输入命令:npm config set proxy nul
B: 输入命令:npm config set https-proxy null
C: npm --registry https://registry.npm.taobao.org info underscore
D: 在.npmrc文件中添加代理:registry = https://registry.npm.taobao.org/
可以通过npm config ls -l 命令查看配置 存在npmrc文件就会打印出文件路径,然后通过记事本编辑后保存
2.5 下载鸿蒙源码放在linux服务器并将源码目录共享到windows目录下(因为鸿蒙开发是在linux环境下编译但是实在windows环境下编辑和调试的),对于像我这样不太熟悉linux的小白来说这一步相当有难度,老司机忽略!
配置linux下的共享目录:树莓派:apt install samba
安装samba:sudo apt-get install samba
建立共享目录:sudo mkdir /home/[username]/[foldername]
设置目录权限:sudo chmod 777 /home/[username]/[foldername]
设置目录共享:sudo vi /etc/samba/smb.conf
在文档最后加上:
[Share]
path = /home/[username]/[foldername]
public = yes
writable = yes
force user = nobody
force group = nogroup
force create mode = 0777
force directory mode = 0755
create mode = 0777
directory mode = 0755
一顿操作猛如虎,一试共享仍失败!!!!继续往下看:
Win10访问linux共享时提示:因为你组织的安全策略阻止未经身份验证的来宾访问。。。。
按如下操作:
gpedit.msc-》计算机配置---管理模板---网络-》Lanman工作站-》三个启用不安全的来宾登录状态目前是未配置的——改为已启用!
如果不能写入共享路径,则执行:chmod -R 755 目录名
三/ 编译环境:
3.1 第4步:安装并升级Python包管理工具(pip3)时出错:“WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.”
“Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) – skipping”
不要指望忽略这一步继续下一步环境搭建,那只会让你的坑越来越深!况且这一步问题你不解决下一步你也会遇到同样的错误!
详细原因及解决办法参考:“https://www.jb51.net/article/176223.htm”,但是其中有有一点需要特别注意,那就是:
cd Python-3.6.2 //这里需要根据自己的python包名和解压路径进行调整,(我的是python3.8.5)否则下一步无法进行。
./configure --with-ssl
make
sudo make install
操作成功后通过python命令:import ssl验证成功,接下来就畅通无阻了!!!
3.2 接下来安装scons的时候会遇到采用命令安装失败,通过下载安装包的方式又无法下载安装包的情况,如下提示:
dpkg: 处理软件包 scons (--configure)时出错:
子进程 已安装 post-installation 脚本 返回错误状态 1
在处理时有错误发生:
通过查询版本号发现已经安装过老版本,只是不支持最新版python,仍然需要重新安装!!!
root@a:/home/a# scons -v
scons: *** SCons version 2.4.1 does not run under Python version 3.8.5.
Python 3 is not yet supported.
采用如下命令:
python -m pip install scons
结果成功安装:
root@a:/home/a# python -m pip install scons
Collecting scons
Downloading SCons-4.0.1-py3-none-any.whl (4.0 MB)
|████████████████████████████████| 4.0 MB 34 kB/s
Requirement already satisfied: setuptools in /usr/local/lib/python3.8/site-packages (from scons) (47.1.0)
Installing collected packages: scons
Successfully installed scons-4.0.1