当前位置: 首页 > news >正文

【笔记】OpenHarmony设备开发:搭建开发环境(Ubuntu 20.04,VirtualBox 7.0.14)

参考:搭建开发环境(HarmonyOS Device)

Note:Windows系统虚拟机中Ubuntu系统安装完成后,根据指导完成Ubuntu20.04基础环境配置(HarmonyOS Connect 开发工具系列课)

系统要求

  • Windows系统要求:Windows10 64位系统。
  • Ubuntu系统要求:推荐使用20.04版本,内存16 GB及以上(注意:Ubuntu系统的用户名不能包含中文字符。)

基础环境配置:安装增强功能

目标:实现从Windows下拷贝文件和粘贴板到Ubuntu下

1、设置Ubuntu当前用户获取sudo权限的密码

sudo passwd

先输入当前账号的登录密码,然后可以在New password中输入设置新的密码(用于使用sudo权限时的密码,设置成一样的也不会报错)

2、测试:sudo命令测试权限

# 更新镜像源
sudo apt-get update

3、设置Ubuntu 增强功能

(菜单)设备->安装增强功能,等待弹窗,选择Run

【VitrualBox】(菜单)设备->安装增强功能
【VitrualBox】(菜单)设备->安装增强功能

弹窗提示,选择Run(点击了Cancel后,再重新菜单就不弹窗了,问题区解决)

【VitrualBox】Ubuntu VBox_GAs_7.0.14 dialog prompt
【VitrualBox】Ubuntu VBox_GAs_7.0.14 dialog prompt

首次安装会提示系统还没准备好环境去编译kernel modules,需要手动安装gcc、make、perl

执行下面命令安装:

# 手动安装 gcc\make\perl 等
sudo apt-get install gcc make perl

提示磁盘使用,根据提示输入y回车确认继续:

安装完成后,输入reboot重启:

重启后输入密码登录后,点击菜单VBox_GAs_xxxxx进入目录可看到 VBoxLinuxAdditions.run程序。

菜单点击“拖放”、“共享粘贴板”选项,都选择双向,然后可以打开中断测试功能,实现虚拟机和本地Windows复制粘贴。

设备-共享粘贴板
【VitrualBox】设备-共享粘贴板
【VitrulBox】设备-拖放
【VitrualBox】设备-共享粘贴板

搭建Ubuntu环境

1、将Ubuntu Shell环境修改为bash。

# 执行如下命令,确认输出结果为bash。
ls -l /bin/sh# 如果输出结果不是bash,请输入下方指令,选择No,将Ubuntu shell修改为bash。
sudo dpkg-reconfigure dash

输入密码,然后选择No,将Ubuntu shell由dash修改为bash。

【Ubuntu】Configuring dash
【Ubuntu】Configuring dash

修改完成后:

2、下载DevEco Device Tool最新Linux版本软件包。

3、解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。

# 解压下载好的安装包,unzip + 空格 + tab可以自动补全,如:
# unzip devicetool-linux-tool-4.0.0.400.zip
unzip devicetool-linux-tool-{Version}.zip# 授权:赋予安装文件可执行权限
# 其中devicetool-linux-tool-{Version}.sh请根据实际进行修改成本地文件
chmod u+x devicetool-linux-tool-{Version}.sh

4、安装DevEco Device Tool

在用户协议和隐私声明签署界面,默认选中2,需要签署同意用户协议和隐私声明才能进行下一步的安装,上下键可以选择:

选择了1,回车直接就执行安装:

安装完成:界面输出“DevEco Device Tool successfully installed." 标志DevEco Device Tool安装成功。

问题区

(一)VirtualBox虚拟机Ubuntu20.04 点击安装增强功能无弹框

解决方案:

1、安装gcc/make/perl后重启

su#更新镜像源
apt-get update # 手动安装 gcc\make\perl 等
sudo apt-get install build-essential gcc make perl dkms#重启
reboot 

提示占用171MB空间,输入y,确认安装

安装完成后重启reboot

重启

way2:

在文件夹中VBox找到VBoxLinuxAdditions.run文件(因为直接执行VBoxLinuxAdditions.run报错,找不到)

右键查看属性可以获取路径:

在文件夹中直接右键打开终端,输入命令,等待安装完成

sudo sh VBoxLinuxAdditions.run

安装过程:

Kernel modules and services 7.0.14 r161095 reloaded 

3、去文件系统(上述界面)里面找到自动挂载的盘,然后运行VBoxLinuxAdditions.run

用户运行时会提示没有权限:must be run with administrator provileges.

所以通过 su 切换到root,再运行VBoxLinuxAdditions.run

# 通过 ./ 运行文件
./VBoxLinuxAdditions.run

相关文章:

【笔记】OpenHarmony设备开发:搭建开发环境(Ubuntu 20.04,VirtualBox 7.0.14)

参考:搭建开发环境(HarmonyOS Device) Note:Windows系统虚拟机中Ubuntu系统安装完成后,根据指导完成Ubuntu20.04基础环境配置(HarmonyOS Connect 开发工具系列课) 系统要求 Windows系统要求&…...

计算机视觉新巅峰,微软牛津联合提出MVSplat登顶3D重建

开篇:探索稀疏多视图图像的3D场景重建与新视角合成的挑战 3D场景重建和新视角合成是计算机视觉领域的一项基础挑战,尤其是当输入图像非常稀疏(例如,只有两张)时。尽管利用神经场景表示,例如场景表示网络&a…...

halcon图像腐蚀

1、原理 使用结构元素在图像上移动,只有结构元素上的所有像素点都属于图像中时,才保留结构元素中心点所在的像素,常用于分离连接的两个物体、消除噪声。 2、halcon代码 dev_open_file_dialog (read_image, default, default, Selection) r…...

neo4j使用详解(六、cypher即时时间函数语法——最全参考)

Neo4j系列导航: neo4j及简单实践 cypher语法基础 cypher插入语法 cypher插入语法 cypher查询语法 cypher通用语法 cypher函数语法 6.时间函数-即时类型 表示具体的时刻的时间类型函数 6.1.date函数 年-月-日时间函数: yyyy-mm-dd 6.1.1.获取date da…...

Web 前端性能优化之一:性能模型及网页原理

一、RAIL 性能模型 RAIL性能模型指出了用户对不同延迟时间的感知度,以用户为中心的原则,就是要让用户满意网站或应用的性能体验。 RAIL :响应(Response)、动画(Animation)、空闲(Idle)、加载(Load) RAIL 性能模型 用户感知延迟的时间窗口 1…...

常用的主流好用的WEB自动化测试工具强烈推荐

在业务使用的自动化测试工具很多。有开源的,有商业化的,各有各得特色,各有各得优点!下面我就介绍几个我用过的一款非常优秀的国产自动化测试工具。在现有的自动化软件当中,都是以元素的name、id、xpath、class、tag、l…...

分享几个非常不错嵌入式开源项目,一定不要错过

大家好,我是知微! 经常有小伙伴后台私信我: 有没有好的开源项目推荐怎么样才能提升自己的编程能力 那么这篇文章就推荐几个还不错的开源项目,感兴趣的小伙伴可以学习一下! 日志库EasyLogger https://github.com/ar…...

Golang基础-4

Go语言基础 介绍 基础 数组(array) 数组声明 元素访问与修改 数组遍历 关系运算 切片创建 多维数组 介绍 本文介绍Go语言中数组(array)操作(数组声明、元素访问与修改、数组遍历、关系运算、切片创建、多维数组)等相关知识。 基础 数组 数组是具有相同数据类型的…...

2024软件设计师备考讲义——UML(统一建模语言)

UML的概念 用例图的概念 包含 <<include>>扩展<<exted>>泛化 用例图&#xff08;也可称用例建模&#xff09;描述的是外部执行者&#xff08;Actor&#xff09;所理解的系统功能。用例图用于需求分析阶段&#xff0c;它的建立是系统开发者和用户反复…...

HTML——1.简介、基础、元素

一、简介 HTML&#xff08;HyperText Markup Language&#xff09;是一种用于创建网页的标记语言。它使用标记&#xff08;tag&#xff09;来描述网页的结构和内容。HTML被用于定义网页中的文本、图像、链接、多媒体以及其他元素的排列和呈现方式。 HTML文档是由一系列的HTML…...

Rust 标准库:std::env::args() 函数简介

std::env::args() 是 Rust 标准库中的一个函数&#xff0c;它属于 std::env 模块。这个函数用于获取并返回一个迭代器&#xff0c;该迭代器包含了程序运行时从命令行传入的所有参数。 当你运行一个 Rust 程序并从命令行传递参数时&#xff0c;例如&#xff1a; my_rust_progr…...

【Blockchain】GameFi | NFT

Blockchain GameFiGameFi顶级项目TheSandbox&#xff1a;Decentraland&#xff1a;Axie Infinity&#xff1a; NFTNFT是如何工作的同质化和非同质化区块链协议NFT铸币 GameFi GameFi是游戏和金融的组合&#xff0c;它涉及区块链游戏&#xff0c;对玩家提供经济激励&#xff0c…...

【Docker】搭建安全可控的自定义通知推送服务 - Bark

【Docker】搭建安全可控的自定义通知推送服务 - Bark 前言 本教程基于绿联的NAS设备DX4600 Pro的docker功能进行搭建。 简介 Bark是一款为Apple设备用户设计的开源推送服务应用&#xff0c;它允许开发者、程序员以及一般用户将信息快速推送到他们自己的iPhone、iPad等设备上…...

国内IP代理软件电脑版:深入解析与应用指南

随着互联网技术的快速发展&#xff0c;网络活动日益丰富多样&#xff0c;IP代理软件也因其独特的功能和优势&#xff0c;成为许多电脑用户不可或缺的工具。在国内&#xff0c;由于网络环境的复杂性和特殊性&#xff0c;选择一款稳定、高效的IP代理软件电脑版尤为重要。虎观代理…...

面向对象设计之开闭原则

设计模式专栏&#xff1a; http://t.csdnimg.cn/4Mt4u 目录 1.引言 2.如何理解“对扩展开放、对修改关闭” 3.修改代码就意味着违反开闭原则吗 4.如何做到“对扩展开放、对修改关闭” 5.如何在项目中灵活应用开闭原则 6.总结 1.引言 开闭原则(Open Closed Principle&…...

【项目技术介绍篇】若依项目代码文件结构介绍

作者介绍&#xff1a;本人笔名姑苏老陈&#xff0c;从事JAVA开发工作十多年了&#xff0c;带过大学刚毕业的实习生&#xff0c;也带过技术团队。最近有个朋友的表弟&#xff0c;马上要大学毕业了&#xff0c;想从事JAVA开发工作&#xff0c;但不知道从何处入手。于是&#xff0…...

实现DevOps需要什么?

实现DevOps需要什么&#xff1f; 硬性要求&#xff1a;工具上的准备 上文提到了工具链的打通&#xff0c;那么工具自然就需要做好准备。现将工具类型及对应的不完全列举整理如下&#xff1a; 代码管理&#xff08;SCM&#xff09;&#xff1a;GitHub、GitLab、BitBucket、SubV…...

Linux小程序: 手写自己的shell

注意&#xff1a; 本文章只是为了理解shell内部的工作原理&#xff0c; 所以并没有完成shell的所有工作&#xff0c; 只是完成了shell里的一小部分工作 #include <stdio.h> #include <unistd.h> #include <string.h> #include <stdlib.h> #include &l…...

javaSwing租户管理系统

简介 欢迎阅读本篇博客&#xff0c;今天我将为大家介绍一个基于Java Swing开发的租户管理系统。该系统具有登录、注册、添加租户、查询租户信息、修改租户信息、删除租户、修改密码、退出登录等功能模块&#xff0c;旨在提供一个便捷的租户管理解决方案。 一、项目介绍 该租…...

cesium实现竖立的圆

cesium中的圆是平行于地面的&#xff0c;想实现竖起来的圆可以使用ellipsoid&#xff0c;设置其中一个轴的radii值为一个很小的值&#xff0c;比如0.00001&#xff0c;则这个轴上的宽度就会非常小&#xff0c;看起来就是一个圆面。 一、画圆ellipse&#xff0c;此处也把画圆的代…...

Python自动化红头文件生成:ReportLab与Jinja2技术实践

1. 项目概述&#xff1a;一个自动化的红头文件生成工具 最近在整理一些行政和项目文档时&#xff0c;经常需要处理格式要求极为严格的“红头文件”。这类文件通常用于正式通知、公告或批复&#xff0c;其版头、字体、字号、间距乃至印章位置都有近乎刻板的规定。手动在Word里调…...

“为什么我的NotebookLM Agent总在胡说?”——20年NLP老兵手把手调试LLM引用可信度的5个黄金检查点

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM Agent研究辅助 核心能力与适用场景 NotebookLM Agent 是 Google 推出的基于私有文档理解的 AI 助手&#xff0c;专为研究者设计。它支持上传 PDF、TXT、Markdown 等格式的研究资料&#xf…...

在Android Termux中搭建轻量级Docker容器环境:原理、部署与实战

1. 项目概述与核心价值最近在折腾移动设备上的开发环境&#xff0c;发现一个挺有意思的项目&#xff1a;George-Seven/Termux-Udocker。简单来说&#xff0c;它是在Android平台的Termux终端模拟器里&#xff0c;实现一个轻量级的Docker容器运行环境。这玩意儿解决了一个挺实际的…...

【AI】短期记忆:会话上下文管理与实现

短期记忆&#xff1a;会话上下文管理与实现 &#x1f4dd; 本章学习目标&#xff1a;本章深入探讨记忆机制&#xff0c;这是AI Agent持续执行的关键能力。通过本章学习&#xff0c;你将全面掌握"短期记忆&#xff1a;会话上下文管理与实现"这一核心主题。 一、引言&a…...

基于MCP的任务编排框架:让AI代理动态规划与执行复杂工作流

1. 项目概述&#xff1a;一个面向AI代理的任务编排与执行框架最近在折腾AI应用开发&#xff0c;特别是想让大语言模型&#xff08;LLM&#xff09;能更“自主”地完成一些复杂任务时&#xff0c;发现了一个绕不开的痛点&#xff1a;任务编排。你给模型一个目标&#xff0c;比如…...

3PEAK思瑞浦 TPA3532-VS1R MSOP8 运算放大器

特性 超低输入偏置电流: -在TA25C时最大士1pA(实验室测试限值) 安 -在-40C至125C(实验室测试限值)下&#xff0c;最大30皮 低输入失调电压:250V(最大值) 集成保护缓冲器&#xff0c;最大偏移电压为200V 低电压噪声密度:18nV/vHz(在1kHz时) 宽带宽:2.1MHz 供电电压:4.5V至16V(2.…...

从零基础到AI大模型高手,自学AI大模型学习路线推荐,不走弯路!

本文提供了一条详尽的AI大模型自学路线&#xff0c;旨在帮助新手小白系统学习。路线涵盖数学与编程基础、机器学习入门、深度学习深入、大模型探索、进阶与应用以及社区与资源等多个方面。内容详细列出了各阶段的学习资源&#xff0c;包括经典书籍、在线课程、实践项目等&#…...

Docker 的了解和使用

1. 虚拟化全虚拟化&#xff1a;虚拟机的操作系统可以和宿主机的操作系统完全不同。os层虚拟化&#xff1a;操作内核相同&#xff0c;软件虚拟化。2. docker安装 Docker容器本质上是Linux容器&#xff0c;它需要Linux内核环境才能运行。在Windows上直接运行Docker&#xff0c;需…...

3步构建你的第二大脑:Obsidian知识管理系统实战指南

3步构建你的第二大脑&#xff1a;Obsidian知识管理系统实战指南 【免费下载链接】obsidian-template Starter templates for Obsidian 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-template 你是否曾为笔记杂乱无章而烦恼&#xff1f;是否在需要某个知识点时…...

开源密钥管理器VSV:一个加密文件搞定多环境密钥管理

1. 项目概述&#xff1a;一个面向开发者的加密密钥管理器最近在折腾一个内部项目&#xff0c;需要管理不同环境&#xff08;开发、测试、生产&#xff09;的数据库密码、API密钥这些敏感信息。一开始图省事&#xff0c;直接写在了.env文件里&#xff0c;结果在代码评审时被同事…...