Difference between revisions of "APITestPage"

From FriendlyELEC WiKi
Jump to: navigation, search
(updated by API)
(updated by API)
 
(251 intermediate revisions by the same user not shown)
Line 1: Line 1:
===开发Qt程序===
 
  
FriendlyELEC为RK3399平台移植的 Qt 5.10.0 支持以下显示设备插件:KMS、EGLFS和XCB,这三种插件均支持GPU硬件加速的OpenGL ES 2.0,只是调用方式不同,描述如下:<br>
+
{{BurnLinuxToExtDrive-Rockchip/zh|NanoPC-T4}}
* KMS – 使用Linux内核的DRM显示接口来渲染界面<br>
+
{{BurnLinuxToExtDrive-Rockchip|NanoPC-T4}}
* EGLFS – 使用OpenGL ES接口来渲染界面<br>
+
* XCB – 在X11服务器上运行,并集成到X11窗口环境<br>
+
<br>
+
三种插件所支持的Qt特性会有所不同,请根据你的需求来选择: <br>
+
{| class="wikitable"
+
|-
+
  | 插件名称
+
  | OpenGL ES
+
  | QtWebEngine
+
  | QtMultimedia
+
  | 视频硬解播放
+
  | 双屏异显
+
|-
+
  | KMS
+
  | <b>Yes</b>
+
  | No
+
  | <b>Yes</b>
+
  | No
+
  | <b>Yes</b>
+
|-
+
  | EGLFS
+
  | <b>Yes</b>
+
  | No
+
  | <b>Yes</b>
+
  | No
+
  | No
+
|-
+
  | XCB
+
  | <b>Yes</b>
+
  | <b>Yes</b>
+
  | <b>Yes</b>
+
  | <b>Yes</b>
+
  | <b>Yes</b>
+
|}
+
建议使用 KMS或XCB 插件。<br>
+
为了方便用户测试,FriendlyCore平台提供了4个脚本文件用于设置Qt环境变量,分别为:
+
::{| class="wikitable"
+
|-
+
|脚本文件名||作用
+
|-
+
|/usr/bin/setqt5env-kms||设置kms插件所需要的环境变量
+
|-
+
|/usr/bin/setqt5env-eglfs||设置eglfs插件所需要的环境变量 
+
|-
+
|/usr/bin/setqt5env-xcb||设置xcb插件所需要的环境变量
+
|-
+
|/usr/bin/setqt5env-nogui||仅供无界面的Qt程序使用
+
|}
+
setqt5env-* 脚本的使用方法:
+
<syntaxhighlight lang="bash">
+
. setqt5env-kms
+
./apps
+
</syntaxhighlight>
+
(注: .与字母s之间有个空格)
+
 
+
====Qt开发环境搭建====
+
需要为RK3399开发Qt应用,建议使用 Ubuntu 18.04 64位系统作为交叉编译平台,也可以使用 Docker 环境:
+
* Docker环境可以参考: http://github.com/friendlyarm/friendlyelec-ubuntu18-docker
+
* 本地交叉编译环境搭建请参考: [[How to Build and Install Qt Application for FriendlyELEC Boards/zh]]<br>
+
====Qt示例====
+
FriendlyCore系统内置了几个Qt5示例,方便测试Qt5的几个模块特性:
+
* Qt QML示例:CinematicExperience
+
CinematicExperience是一个用Qt QML实现的专辑列表界面。<br />
+
例子演示了Qt QML中的界面动态转换、粒子模拟和着色器特效,所以这个示例非常能体现硬件性能与软件优化的差异,在RK3399平台上非常流畅。<br />
+
CinematicExperience的运行命令:<br />
+
 
+
 
+
运行截图:<br />
+
 
+
 
+
 
+
* Qt WebEngine示例:网页浏览器
+
Qt WebEngine使用了Chromium作为渲染引挚,对HTML5支持完美。<br />
+
这里示例展示的网页浏览器是 Qt5 自带的Demo,运行命令:<br />
+
 
+
运行截图:<br />
+
 
+
注:Qt WebEngine在FriendlyCore平台上需要使用Xcb插件来运行。
+
 
+
* Qt 双屏异显示例
+
* Qt Multimedia: 硬解播放器
+
* Qt WebGL示例: nmapper
+
* Qt VNC示例: 智能家居控制界面
+
* Qt X11
+

Latest revision as of 09:58, 29 October 2024

1 安装系统到M.2或USB硬盘

可以通过使用TF卡启动eFlasher系统,将引导和系统分别安装到不同存储设备,但是由于CPU不支持直接从M.2和USB设备引导,所以虽然系统可以安装到M.2和USB设备,但是引导仍然需要安装到eMMC或者TF卡。
操作步骤如下:

  • 准备一张32G或以上容量的TF卡;
  • 访问此处的下载地址下载文件名为XXXX-eflasher-multiple-os-YYYYMMDD-30g.img.gz的固件(位于"01_系统固件/02_SD卡刷机固件(SD-to-eMMC)"目录);
  • 将固件写入TF卡,在NanoPC-T4上连接好存储设备,插入TF卡上电开机,接下来要在界面上操作,如果没有显示设备,可以使用VNC代替,请参考使用VNC操作eFlasher;
  • 在eFlasher界面上,首先选择要安装的OS,然后选择引导安装的目的地 (通常选eMMC),以及选择系统安装的目的地(可以选eMMC,M.2硬盘,USB存储设备等),如下图所示:

Eflasher-select-boot-and-system-device.png

  • 没有eMMC时可使用TF卡作为引导,方法是将另一个TF卡通过USB读卡器插入USB端口,然后选择USB设备作为引导安装目的地,从而实现从TF卡引导,但系统存放在M.2或USB硬盘的目的;
  • 烧写完成后,从NanoPC-T4弹出SD卡,引导在eMMC的情况下,NanoPC-T4会自动重启至你刚刚烧写的系统,如果引导安装在TF卡,则需要拨掉电源,插入TF引导卡再上电开机;
  • 更详细的安装指南请参考此处;

2 Installing the System to M.2 or USB Drive

You can use a TF card to boot the eFlasher system, allowing the boot and system to be installed on different storage devices. However, since the CPU doesn’t support booting directly from M.2 and USB devices, the system can be installed on M.2 and USB devices, but the boot must still be installed on eMMC or a TF card.
Steps are as follows:

  • Prepare a TF card with a capacity of 32GB or larger.
  • Visit [the download link here](http://download.friendlyelec.com/APITestPage) to download the firmware file named XXXX-eflasher-multiple-os-YYYYMMDD-30g.img.gz (located in the “01_Official images/02_SD-to-eMMC images” directory).
  • Flash the firmware to the TF card, connect the storage device you intend to use on NanoPC-T4, insert the TF card and power on, we need to perform the operations in the eFlasher GUI. If your NanoPC-T4 does not have a display interface, you can use VNC; refer to Using VNC to Operate eFlasher.
  • In the eFlasher GUI, select the OS to install, and in the OS settings interface, choose the destination for boot installation (typically eMMC), then choose the destination for system installation (options include eMMC, M.2 hard drive, USB storage, etc.), as shown below:

Eflasher-select-boot-and-system-device.png

  • If no eMMC is available, the TF card can serve as the boot by inserting another TF card into the USB port via a USB card reader and selecting it as the boot destination, enabling booting from the TF card with the system stored on the M.2 or USB drive.
  • After flashing, eject the SD card from NanoPC-T4. If booting from eMMC, NanoPC-T4 will automatically restart into the newly flashed system. If boot installation is on a TF card, power off, insert the boot TF card, and power on again.
  • For a more detailed installation guide, please refer to this link.