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

openharmony—4.1 softbus_tool 工具编译使用测试笔记(持续更新)

 相关资料:

1.communication_dsoftbus: 暂无描述 - Gitee.com

2.dsoftbus_tool: OpenHarmony 分布式软总线样例

3.OpenAtom OpenHarmony​

4.OpenAtom OpenHarmony

编译该demo之前需要大家搭建拉取openharmony源码,搭建开发环境,同时全量编译成功,具体可以看这两篇文章

创作中心-CSDN

创作中心-CSDN

我们将仓库,拉取下来

dsoftbus_tool: OpenHarmony 分布式软总线样例

目录如下

softbus_tool目录如下

1.复制文件夹

我们将softbus_tool文件夹放入 openharmony源码目录/foundation/communication/dsoftbus/tests/

2.编辑GN

打开OpenHarmony/foundation/communication/dsoftbus/core/BUILD.gn

增加

"../tests/softbus_test:softbus_test"

3.编译

进入openharmony目录,使用如下命令编译

sudo ./build.sh --product-name rk3568 --ccache --build-target dsoftbus

3.1 解决编译报错

报错

原因为在hilog在4.1中的需要增加依赖才可以使用

重新编译

3.2 编译成功

编译结果在

3.3 清理之前编译结果

sudo rm -rf ./out/rk3568

3.4 编译64位版本

sudo ./build.sh --product-name rk3568 --target-cpu arm64 --ccache --build-target dsoftbus

编译失败,因为当前系统不支持64位

3.5 加快编译的命令

第一次编译完成之后,我们可以直接使用之前的GN,不需要每次都重新构建,所以可以直接使用如下命令

sudo ./build.sh --product-name rk3568 --ccache --build-target dsoftbus --fast-rebuild

4.将编译后的结果放置到开发板上

这里我们需要先将文件挪到window上,然后使用hdc工具将文件发送到开发板上

相关资料:

OpenHarmony 开源鸿蒙北向开发——hdc工具安装_鸿蒙hdc下载-CSDN博客

OpenHarmony 开源鸿蒙北向开发——hdc工具使用及常用命令(持续更新)-CSDN博客

我这里是在鸿蒙系统下./data/创建了test目录,然后使用hdc工具传输到该目录,同时我直接在softbus_tool目录下打开的cmd,所以直接使用如下命令将文件传送至开发板

hdc file send softbus_tool ./data/test

然后我们使用hdc工具进入openharmony的shell,

hdc shell

之后进入鸿蒙后台可以看见该文件,

然后我们需要修改权限,使用如下命令

chmod 777 ./data/test/softbus_tool

5.运行

我这里直接在hdc工具的shell下运行该文件,运行成功

5.1 运行报错

但是依照softbus_tool仓库的README运行时,产生报错

而我使用使用串口后台运行是这样提示的

5.2 查看日志

我们这边先运行工具,但是不输入命令

然后打开另一个hdc shell

使用如下命令,查看所有进程

ps -ef | grep "softbus"

找到softbus tol的进程PID,即2269

使用hilog查看该pid日志

hilog -P 2235

同时在原先的shell下输入命令操作softbus_tool工具,日志如下

仍旧报错

而在hilog这边

查了下资料发现softbus tool仓库的README是基于openharmony3.1编写的,与openharmony4.1不同。

相关资料: communication_dsoftbus: 暂无描述 - Gitee.com

我们应该使用如下几个命令

******Softbus Tool Command List****** *

04 - JoinLNN * *

05 - LeaveLNN * *

08 - PublishLNN * *

09 - StopPublishLNN * *

10 - RefreshLNN * *

11 - StopRefreshLNN * *

20 - SendMessage * *

21 - SendBytes * *

22 - SendStream * *

23 - SendFile * *

************************************

5.3 运行报错

尝试发现,无法进入回调函数,将源码中的信号量部分注释掉,发现可以了

重新编译,发现运行可以了,这里我复制了一份softbus tool作为softbus test,编译后在开发板上运行

发现可以了

相关文章:

  • ubuntu 安装ollama后,如何让外网访问?
  • 基于QT(C++)实现(GUI)旅行查询与模拟系统
  • 展销编辑器在未来的发展前景​
  • python 取出字串中的所有词
  • C++:迭代器失效问题
  • 东田数码科技前端面经
  • 利用 Python 爬虫按关键字搜索 1688 商品详情:实战指南
  • (leetcode)力扣100 1.两数之和(两种方法:O(nlogn)/O(n))
  • Go 语言中的 `select` 语句详解
  • 30、不是说字符串是不可变的吗,string s=“abc“;s=“123“不就是变了吗?
  • 【C++】C++11新特性(一)
  • nextjs整合快速整合市面上各种AI进行prompt连调测试
  • 【Java二分查找】
  • Linux(Centos版本)中安装Docker
  • 在CentOS 8上在线安装Docker
  • 1到12月和1到31日英文表达
  • R中实现数值求导的包numDeriv
  • Web服务器技术选型指南:主流方案、核心对比与策略选择
  • 有效的字母异位词
  • 在线教育系统开发常见问题及解决方案:源码部署到运营维护
  • “上报集团文化助力区域高质量发展赋能平台”揭牌
  • 仅退款正式成历史?仅退款究竟该不该有?
  • 人民日报任仲平:为什么中国意味着确定性、未来性、机遇性
  • 记录发生真相,南沙岛礁生态调查纪实片《归巢》发布
  • “今日海上”对话“今日维也纳”,东西方艺术在上海碰撞
  • 瑞士外长答澎湃:瑞中都愿升级自贸协定,关税战没有任何好处