电子产业一站式赋能平台

PCB联盟网

搜索
查看: 710|回复: 1
收起左侧

韦东山鸿蒙系统移植课程:编译其他APP

[复制链接]

2607

主题

2607

帖子

7472

积分

高级会员

Rank: 5Rank: 5

积分
7472
发表于 2020-9-30 17:56:48 | 显示全部楼层 |阅读模式
韦东山鸿蒙系统移植课程:编译其他APP,   
1.1 获取源码 我们提供了这几个程序:

59.png (21.71 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传 放在GITEE上,地址为:https://gitee.com/weidongshan/openharmony_for_imx6ull 为了方便,可以在Ubuntu中执行以下命令直接下载: cd  /home/book git  clone https://gitee.com/weidongshan/openharmony_for_imx6ull.git 这将会得到这个目录:/home/book/openharmony_for_imx6ull
1.2 编译程序 假设已经下载得到/home/book/openharmony_for_imx6ull目录,执行以下命令即可编译: cd  /home/book/openharmony_for_imx6ull/apps for i in $(ls); do cd $i; make; cd -; done 解释以下上面的命令。 $(ls)里列出了这几个目录:digital_photo_frame  fb_test  freetype  hello。 对于其中的每一项“$i”,执行(do)这些命令:cd  $i; make; cd -。就是进入该目录,执行make命令,退到上一级目录。 你当然可以自己进入那些子目录,手工执行make命令。
注意: (1) freetype、digital_photo_frame这2个程序,需要使用到前面编译出来的hi3518ev300的库文件。 (2) 所以需要先执行“python build.py ipcamera_hi3518ev300 -b debug” (3) 如果鸿蒙源码的路径不是/home/book/openharmony,那么需要修改Makefile,如下修改路径:

60.png (3.69 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传
1.3 复制程序到rootfs 这2个程序不依赖其他动态库:hello、fb_test;但是freetype程序依赖libfreetype.so、digital_photo_frame程序依赖libfreetype.so、libjpeg.so。 这几个动态库在哪?我们取个巧,之前在

1.2.4 编译官方版本
执行过“python build.py ipcamera_hi3518ev300 -b debug”,它为hi3518ev300开发板生成了这写库文件。hi3518ev300与imx6ull同属cortex A7架构,所以imx6ull可以使用这些库。以后完善imx6ull的代码后,就不需要这样取巧了。 执行以下命令复制程序: cd  /home/book/openharmony_for_imx6ull/apps # 拷贝应用程序 cp hello/hello  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin cp fb_test/fb_test  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin cp freetype/show_line /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin cp digital_photo_frame/digitpic /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/bin # 拷贝字体文件 cp freetype/simsun.ttc  /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/ # 拷贝数码相框的图标 cp digital_photo_frame/rootfs /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/  -RF # 拷贝库文件 cp /home/book/openharmony/out/ipcamera_hi3518ev300/libs/usr/libfreetype.so /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/usr/lib/ cp /home/book/openharmony/out/ipcamera_hi3518ev300/libs/usr/libjpeg.so /home/book/openharmony/kernel/liteos_a/out/imx6ull/rootfs/usr/lib/


1.4 制作rootfs.jffs2 执行以下命令: cd  /home/book/openharmony/kernel/liteos_a/out/imx6ull/ mkfs.jffs2  -s 0x10000 -e 0x10000 -d rootfs -o rootfs.jffs2

把得到的rootfs.jffs2放到烧写工具的files目录,就可以使用烧写工具启动了:

61.png (15.2 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传


1.5 执行APP 这些APP,可以直接执行,如果需要参数的话,它会提示用法。 注意:必须用相对路径,比如“./bin/hello”;不能用绝对路径,比如“/bin/hello”
1.5.1 fb_test 执行以下命令: ./bin/fb_test /dev/fb0

效果如下:

62.png (332.14 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传


1.5.2 show_line 执行以下命令: ./bin/show_line /simsun.ttc 230 230 100

效果如下:

63.png (529.36 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传
1.5.3 digitpic 执行以下命令: ./bin/digitpic /simsun.ttc

可以点击屏幕上的图标,效果如下:

64.png (516.96 KB, 下载次数: 0)

下载附件  保存到相册  

1 小时前 上传
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表