Wg01工业网关_IP

Wg01工业网关_IP_02Wg01工业网关_IP_03Wg01工业网关_VMware_04Wg01工业网关_Ubuntu_05Wg01工业网关_VMware_06




Wg01工业网关_IP_07




























尊敬的用户


感谢您选用本产品请在使用本产品前,仔细阅读用户手册。请妥善保管本手册,以备参考使用。


Wg01工业网关_VMware_08

Wg01工业网关_Ubuntu_09


安装本产品前请核对型号和配置,并按手册要求进行安装。

请勿让本产品淋雨或受潮,以免损坏。

















目录


目录

尊敬的用户 i

目录 ii

1 设备介绍 1

1.1 典型应用场景 1

1.2 设备形态及面板介绍 1

1.2.1 面板图示 1

1.2.2 指示灯说明 3

1.3 接口功能和技术指标 4

1.3.1 以太网接口 4

1.3.2 CONSOLE串行配置接口 4

1.3.3 RS232/485接口 5

1.3.4 电源接口 6

1.3.5 其余参数 6

2 产品快速使用说明 7

2.1开机前准备 7

2.2串口登入方式 7

2.2.1 用户登录 7

2.2.2 使用串口终端登录 7

2.3 SSH登入方式 8

2.4 使用webmin方式管理网关 9

4 Qt开发 10

4.1嵌入式Linux开发简介 10

4.2Ubuntu虚拟机安装 11

4.2.1 安装 VMware 软件 11

4.2.2 创建和配置虚拟机 14

4.2.3 在虚拟机中安装Ubuntu系统 20

4.3 在虚拟机的Ubuntu系统中安装Qt交叉编译环境 27

4.3.1 安装基本的开发环境 27

4.3.2 使用脚本构建qt交叉编译环境 27

4.3.3 使用虚拟机交叉编译环境开发HelloWorld程序 29

4.3.4 在wg01网关上安装qt runtime库 31



  1. 设备介绍

典型应用场景

生产制造、加工企业生产过程信号采集、数据传输;

环境监测,大气环境监测信号采集、数据传输;

农业大棚环境监测信号采集、数据传输;

养殖环境监测信号采集、数据传输;

医药、食品仓储环境监测信号采集、数据传输。

设备形态及面板介绍

面板图示

设备面板示意图如下:

Wg01工业网关_Ubuntu_10

Wg01工业网关_VMware_11


Wg01工业网关_VMware_12


Wg01工业网关_Ubuntu_13

Wg01工业网关_Ubuntu_14

Wg01工业网关_Ubuntu_15

Wg01工业网关_Ubuntu_16

Wg01工业网关_Ubuntu_17

Wg01工业网关_IP_18

Wg01工业网关_Ubuntu_19

Wg01工业网关_IP_20

Wg01工业网关_VMware_21

Wg01工业网关_Ubuntu_22


图1.前面板示意图

Wg01工业网关_VMware_23

Wg01工业网关_VMware_24


Wg01工业网关_Ubuntu_25

Wg01工业网关_VMware_26

Wg01工业网关_IP_27


图2.侧面板示意图

上图中各部分说明如下:

  1. RST复位键:短按2秒以下重启设备,长按5秒及以上设备会恢复到出厂配置;(暂未实现复位功能)
  2. PWR:设备上电指示灯;
  3. SYS:设备正常工作指示灯;
  4. Mod1:4G指示灯;
  5. Mod2:WIFI指示灯;
  6. USB接口:USB2.0接口;
  7. WAN 1-2网口,2个独立的10/100M自适应电口;

  8. COM1:默认Console口,异步模式,115200bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控;
  9. 如为RS232口,异步模式9600bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控

  10. COM2:默认RS232口,如为RS232口,异步模式9600bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控

如为RS485口,异步模式9600bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控

10-12)COM3、COM4、COM5:RS485口,异步模式9600bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控

13-14)ANT1、ANT2:天线口;

15)SIM:SIM卡插入口;

16)直流电源接口:DC输入9-39V;

指示灯说明

表1. 前面板指示灯说明

指示灯名称

功能定义

PWR

熄灭:无电源

常亮:电源接通

SYS

熄灭:系统硬件故障或复位

闪烁:设备正常工作

Mod1-2

熄灭:模组未启动,或工作异常

闪烁:模组正常工作

RS232/485指示灯TX/RX

闪烁:数据传输

备注:

  1. 所有前面板灯为绿色
  2. 闪烁频率是0.5秒亮0.5秒灭

2. 后面板指示灯说明

指示灯名称

颜色

含 义

状 态

RJ45连接器自带指示灯

绿

以太网连接指示

亮:接口处于连接状态;

闪烁:接口处于连接状态,且有以太网帧收发;

灭:接口处于没有连接状态;

以太网工作速率指示灯

亮:接口自协商为100M连接;

灭:接口自协商为10M连接或处于未连接状态;

接口功能和技术指标

以太网接口

设备提供2路独立以太网接口,每路以太网数据速率为10/100/Mbps。


  • 主要特点:
  1. 符合IEEE 802.3 协议
  2. 支持以太网性能监测
  3. 自动识别交叉/直连网线(AUTO MDI/MDIX)

  • 技术指标
  1. 接口类型:10Base-T/100Base-Tx
  2. 接口速率:10/100Mbps
  3. 遵循标准:IEEE 802.3
  4. 物理接口:RJ45

CONSOLE串行配置接口

用于连接网管PC,实现设备基本配置功能。


  • 技术指标
  1. 接口类型:RS232-C / ITU_T V.24
  2. 配置格式:异步模式115200bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控
  3. Wg01工业网关_Ubuntu_28

  4. 物理接口:接线端子,COM1、COM2管脚定义见下表







图3. COM1、COM2示意图


表3. CONSOLE串口信号定义

序号

定义

2

A/TX-1:发送数据

3

B/RX-1:接收数据

1,4

GND:地


COM2管脚定义见下表:


表4. CONSOLE串口信号定义

序号

定义

1

GND:地

2

A/TX-1:发送数据

3

B/RX-1:接收数据

4

+12V电源

注:GND +12V不要接错,如接反或短路会使设备损坏。

RS232/485接口

  1. 接口类型:RS232-C / ITU_T V.24
  2. 配置格式:异步模式9600bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控
  3. 物理接口:接线端子,COM3、COM4、COM5管脚定义见下表

Wg01工业网关_VMware_29


图4. COM3、COM4、COM5示意图




表5. 信号定义

序号

定义

1

GND:地

2

A/TX-1:发送数据

3

B/RX-1:接收数据

4

+12V电源

注:GND +12V不要接错,如接反或短路会使设备损坏。

电源接口

  1. 物理接口:凤凰接线端子,管脚定义见下表

表6. 信号定义

序号

定义

1

GND

2

+VS:DC 9-39V

3

接地


其余参数


  • 环境气候要求
  1. DC输入9-39V
  2. 设备额定功率: W
  3. 工作温度:-40°C~70°C
  4. 存储温度:-40°C~85°C
  5. 工作相对湿度:10%~95%(无凝结状态)
  • 设备结构尺寸:165mm(长)*103.8mm(宽)*30mm(高)
  1. 产品快速使用说明


2.1开机前准备

12V 2A DC 电源线;

网线(网络登录使用);

串口线(串口登录使用);

2.2串口登入方式

网关使用“Linux 串口”作为默认的登录调试串口,通过“Linux 串口”登录的串口通讯参数设置如下:

接口类型:RS232-C / ITU_T V.24;配置格式:异步模式115200bps比特率,8位数据位,1位停止位,无奇偶校验,无数据流控。硬件连接详见:13.2

2.2.1 用户登录

用户:root 密码:123456

2.2.2 使用串口终端登录

串口终端软件有许多选择,例如Xshell、 puttySecureCrtTelnet 等终端仿真程序,简单地说是Windows 下登录UNIX Linux 服务器主机的软件。本文以 为例,操作如下。


步骤为:

1) 文件、新建、设置主机名

2) 选择串口;

3) 选择对应设备显示的端口口号,本处为COM5

4) 设置串口属性;

5) 设置完后链接板子。

正常启动后,SecureCRT 的打印如下所示。


Wg01工业网关_VMware_30


Wg01工业网关_VMware_31



2.3 SSH登入方式

本处使用Xshell 软件演示SSH2 登录功能,软件配置如下所示。



具体步骤如下所示:

1) 电脑与网关之间网线连接,网线LAN口:WAN1

2) 输入目标板的以太网IP 地址,IP 地址;LAN口固定IP192.168.31.1;

3) 输入用户名密码;


Wg01工业网关_Ubuntu_32


Wg01工业网关_VMware_33


正常连接后,打印如下所示。


Wg01工业网关_IP_34


2.4 使用webmin方式管理网关

具体步骤如下所示:

1) 电脑与网关之间网线连接,网线LAN口:WAN1

2) 输入目标板的以太网IP 地址,IP 地址;LAN口固定IP192.168.31.1;

3)打开浏览器输入: https://192.168.31.1:10000

4)选择高级,点击连接192.168.31.1

5) 输入用户名密码:root,123456;



Wg01工业网关_Ubuntu_35


Wg01工业网关_IP_36


Wg01工业网关_IP_37



3命令行功能测试

3.1网络接口

wg01工业网关的网络接口如下:两个10/100M自适应网口、2.4GWIFI和LTE。出厂默认配置:WAN2为路由wan口,WAN1为路由lan口;其中WAN1与WIFI 在一个桥中(名称:br-lan),网关 IP 192.168.31.1。

输入ifconfig -a 命令,可以查看所有的网络设备,如下所示:


Wg01工业网关_IP_38


Wg01工业网关_IP_39

Wg01工业网关_Ubuntu_40



网络相关接口定义如下所示。


WAN1: eth0 以太网口,10/100Mbps 自适应,RJ45口

WAN2: eth1 以太网口,10/100Mbps 自适应,RJ45口

LTE: usb0 4G接口,驱动正常识别后生效

WIFI: wlan0 WIFI接口,驱动形式与以太网接口一致


3.2 以太网接口

Linux 系统将以太网、WIFI4G都抽象成网络设备,他们之间具有许多共性操作,

操作如下所示。

3.2.1 手动设置 IP

固定IP 一般用于局域网通讯,例如以太网、WIFI AP 功能用作内部局域网通讯,设

置命令如下所示。使用ifconfig 命令可以设置网卡的IP 地址和子网掩码,其命令格式如下:

ifconfig 网络接口名IP 地址netmask 子网掩码

例如要将eth1 ip 地址设置为192.168.1.10,执行如下命令:

ifconfig eth1 192.168.1.10 netmask 255.255.255.0

设置完毕后,可以使用ifconfig eth1 命令查看网口的配置:

ifconfig eth1


3.2.2 动态分配IP

动态IP 一般适用于网内有大量的同样的设备或外网环境,典型的以太网或4G 接口是

需要动态分配IP,使用dhclient 服务分配IP,命令如下所示。


dhclient -v eth1


3.2.3 启动/关闭网口

通过ifconfig 命令的up/down 参数,启动和关闭网络设备,如下所示。

关闭网卡的命令格式为:

ifconfig 网络接口名down

启动网卡的命令格式为:

ifconfig 网络接口名up

例如要关闭网卡2,执行如下命令:

ifconfig eth1 down

要启动网卡1,执行如下命令:

ifconfig eth1 up

3.2.4 设置网关

Linux 通过IP 路由表来管理网络通信,当需要网络通讯前,Linux 系统通过Destination

决定网段,优先选择同一网段的接口通讯。

使用route 命令可以用来添加、删除网关或查看网关配置:

使用如下命令给网卡添加默认网关:

route add default gw 网关IP 地址网络接口名

例如要将方面eth1 的默认网关设置为192.168.1.111,执行如下命令:

route add default gw 192.168.1.111 eth1

使用route -n 命令可以查看当前的网关配置:

route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

0.0.0.0 192.168.1.111 0.0.0.0 UG 0 0 0 eth1

192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1

使用如下命令删除网卡上已经配置的默认网关:

route del default gw 网关IP 地址网络接口名

例如要将eth1 上配置的IP 192.168.1.111 的默认网关删除,执行如下命令:

route del default gw 192.168.1.111 eth1

3.2.5 设置DNS

如需要使用域名访问互联网,例如ping 百度,则需要配置DNS 服务器。配置方法如下:

编辑“/etc/resolv.conf”文件(如果不存在则创建一个新的文件),并在其中添加一个或

者多个DNS 服务器的IP 地址,例如要将114.114.114.114 作为首选的DNS 服务器,将8.8.8.8

作为备选的DNS 服务器,则在/etc/resolv.conf 添加如下内容:

nameserver 114.114.114.114

nameserver 8.8.8.8


3.3 WIFI测试( hostapd

WIFI默认是开启状态,打开手机WiFi或者电脑WiFi就可连接到WiFi 1023_2G_WPS默认没有密码

3.3.1安装依赖

1

2

#下载工具hostapd 和 dhcpd

sudo apt install hostapd isc-dhcp-server

3.3.2创建配置文件

修改hostap.cnf文件



interface=wlan0

bridge=br-lan


logger_syslog=-1

logger_syslog_level=2

logger_stdout=-1

logger_stdout_level=2


dump_file=/tmp/hostapd.dump


ctrl_interface=/var/run/hostapd

ctrl_interface_group=0

country_code=US


ssid=1023_2G_wpa


hw_mode=g

channel=11


#wpa=2

#wpa_key_mgmt=WPA-PSK

#rsn_pairwise=CCMP

#wpa_passphrase=1234567890


#acs_num_scans=5

#acs_chan_bias=1:0.8 6:0.8 11:0.8

#chanlist=100 104 108 112 116

#chanlist=1 6 11-13


#beacon_int=100


ieee80211n=1

ht_capab=[HT20]

#ht_capab=[SHORT-GI-40][HT40]

#vht_oper_chwidth=0

#require_ht=1

#obss_interval=0


dtim_period=2

max_num_sta=255

#rts_threshold=2347

#fragm_threshold=2346

macaddr_acl=0

auth_algs=3

ignore_broadcast_ssid=0

wmm_enabled=1

wmm_ac_bk_cwmin=4

wmm_ac_bk_cwmax=10

wmm_ac_bk_aifs=7

wmm_ac_bk_txop_limit=0

wmm_ac_bk_acm=0

wmm_ac_be_aifs=3

wmm_ac_be_cwmin=4

wmm_ac_be_cwmax=10

wmm_ac_be_txop_limit=0

wmm_ac_be_acm=0

wmm_ac_vi_aifs=2

wmm_ac_vi_cwmin=3

wmm_ac_vi_cwmax=4

wmm_ac_vi_txop_limit=94

wmm_ac_vi_acm=0

wmm_ac_vo_aifs=2

wmm_ac_vo_cwmin=2

wmm_ac_vo_cwmax=3

wmm_ac_vo_txop_limit=47

wmm_ac_vo_acm=0

eapol_key_index_workaround=0

eap_server=0

own_ip_addr=127.0.0.1

#IvanChen created end


备注:WiFi上网需要配置防火墙NAT转发

# 开启防火墙NAT转发(如果本机使用eth1上网,则把eth0改为eth1)

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


3.4 LTE测试

4G模块三大运营商均可支持

3.4.1拨号

1.atcmdtool AT+GTAUTOCONNECT=1(自动拨号) 或者atcmdtool at+gtrndis=1,1(手动拨号)

2.atcmdtool AT+CFUN=15 重启4G模块 等待一分钟

3.dhclient -v usb0 获取ip上网

4.ping  www.qq.com验证入网成功

如图所示:以自动拨号为例

Wg01工业网关_Ubuntu_41





3.4.2常用AT指令

查询基础AT指令

Wg01工业网关_IP_42


  1. Qt开发

嵌入式Linux开发简介

WG01工业网关采用arm架构的CPU,安装的是嵌入式Linux操作系统,相比于我们日常使用的基于x86架构的PC机,资源比较匮乏,磁盘存储空间、内存资源、CPU性能均有限,我们一般不直接在上面安装完整的Qt开发环境,而是仅仅在其上安装Qt程序的运行环境。此外,会另外在性能更好的x86 PC上构建Qt交叉编译环境,在这个交叉编译环境中编译得到可以在嵌入式arm环境中运行的Qt程序,再拷贝到WG01运行。

为了不与个人日常开发的x86编译环境冲突,我们通常使用一个Ubuntu虚拟机来安装Qt交叉编译环境,具体过程如下:

Ubuntu虚拟机安装

安装 VMware 软件

此处以VMware15 Pro 版本为例介绍VMware 软件的安装和使用。




用户可以从 www.vmware.com 下载VMware 安装程序。双击安装程序,在弹出的对话框中点击“下一步”按钮,如下图所示:

Wg01工业网关_Ubuntu_43


4.1 安装 VMware

在弹出的“最终用户许可协议”对话框中,勾选“我接受许可协议中的条款”,并点击“下一步”按钮,如下图所示:



Wg01工业网关_Ubuntu_44


4.2 VMware 安装-许可协


在弹出的“自定义安装”对话框中,用户可以更改程序的安装路径,也可以使用软件默认的安装路径,并点击“下一步”按钮,如下图所示:

Wg01工业网关_IP_45


4.3 Vmware 安装-设置安装路径


之后采用安装软件的默认设置,一直点击“下一步”按钮,直到出现如下界面:

Wg01工业网关_IP_46


4.4 Vmware 安装-开始安装


在该界面上点击“安装”按钮,开始安装。安装完成后,会提示如下界面:

Wg01工业网关_Ubuntu_47


4.5 VMware 安装-安装完成


在该画面上,用户可以点击“许可证”按钮,输入软件的授权码;也可以先点击“完成” 按钮,结束安装,在运行软件时,再输入授权码。如果点击“许可证”按钮,则弹出如下对话框:

Wg01工业网关_IP_48


4.6 VMware 安装-输入许可证


在该对话框中,用户输入软件的授权码,然后点击“输入”按钮,弹出如下画面:


Wg01工业网关_IP_49


4.7 VMware 安装-安装完成

在该画面中点击“完成”按钮即可完成安装。


创建和配置虚拟机

  1. 创建虚拟机运行VMware 虚拟机软件,如下图所示

4.8 VMware 启动界面

点击文件菜单下的新建虚拟机子菜单,弹出新建虚拟机向导对话框,如下图所示


Wg01工业网关_IP_50


4.9 VMware 新建虚拟机向导

选择典型推荐,并点击下一步按钮,弹出安装客户机操作系统对话框,如下图所示:


Wg01工业网关_VMware_51


4.10 安装客户机操作系统

选择稍后安装操作系统选项,然后点击下一步按钮。弹出选择操作系统话框,如下图所示:


Wg01工业网关_Ubuntu_52


4.11 选择操作系统

其中客户机操作系统选择Linux版本则根据用户所下载的Ubuntu 安装文件的实际版本进行选择,如果要安装的 Ubuntu 32 位的版本,则选择 Ubuntu;如果要安装的Ubuntu 64 位的版本,则选择 Ubuntu 64。设置完成后,点击下一步按钮,弹出命名虚拟机对话框,如下图所示:


Wg01工业网关_IP_53


4.12 命名虚拟机

其中虚拟机名称可以为虚拟机指定一个任意的名字;位置则为新创建的虚拟机指定一个存放路径,虚拟机可以存放在任意目录中,但必须保证该目录所在的磁盘有足够大的剩余空间。设置完成后,点击下一步按钮,弹出指定磁盘容量对话框,如下图所示:


Wg01工业网关_IP_54


4.13设置虚拟机磁盘大小

关于最大磁盘大小这个参数说明如下

  • 最大磁盘大小建议设置到40G 以上。因为除了安装 Ubuntu 操作系统本身外, 还会安装嵌入式 Linux 开发的各种工具,以及对应的源码等,都需要较大的磁盘空间;
  • 虽然此处配置了 40G 的磁盘空间,但VMware 并不会立即占用 40G 实际硬盘空间。虚拟磁盘文件会在使用过程中逐步增大,直到最大容量 40G。尽管不会立即占用40GB 硬盘空间,但是为了将来方便使用,必须保证放置虚拟机所在的磁盘有超过40G 的空闲空间。

设置完成后,点击下一步按钮,弹出已准备好创建虚拟机对话框,如下图所示


Wg01工业网关_Ubuntu_55


4.14 已准备好创建虚拟机

点击完成按钮,完成虚拟机的创建工作

  1. 配置虚拟机

根据需要用户可以修改已创建虚拟机的参数配置,具体方法如下:

在虚拟机主界面上,点击需要修改的虚拟机标签页,如下图所示


Wg01工业网关_IP_56


4.15 配置虚拟机


点击左侧的编辑虚拟机设置按钮,弹出虚拟机设置对话框,如下图所示


Wg01工业网关_Ubuntu_57


4.16 虚拟机设置


在该对话框中,可以对虚拟机的内存、网络等参数进行配置和修改。以下重点介绍网络部分的设置,网络设置界面如下图所示


Wg01工业网关_IP_58


4.17 VMware 网络设置


如图所示,虚拟机网络可以工作在如下 3 种模式

  • 桥接模式:在这种模式下,VMware 虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。在桥接模式下,虚拟系统和宿主机器的关系,就像连接在同一个Hub 上的两台电脑。用户需要手工为虚拟系统配置 IP 地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网内的一个独立的主机系统,那么就可以手工配置它的 TCP/IP 配置信息,以实现通过局域网的网关或路由器访问互联网。
    在进行嵌入式Linux开发时,如果需要目标板通过NFS文件系统挂载虚拟机的NFS共享目录的话,必须将虚拟网卡配置为桥接模式。
  • NAT模式使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网,也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。NAT模式下虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,虚拟机无法正常对主机所连网络中的其它主机提供普通的网络服务,如TFTP、NFS和FTP等。
    采用NAT模式最大的优势是虚拟系统接入互联网非常简单,用户不需要进行任何其它的配置,只需要宿主机器能访问互联网即可。
  • 仅主机模式

在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时用户就可采用仅主机(Host-Only)模式。在 Host-Only 模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。


在虚拟机中安装Ubuntu系统

此处以 Ubuntu 18.04.1 版本为例介绍Ubuntu 的安装和使用。


用户可以从以下网址下载Ubuntu ISO 镜像文件:

https:/ /www. ubuntu.com/download/desktop/thank-you?country=CN&versinotallow=18.04.1&architecture=amd64


其中 ubuntu-18.04.1-desktop-amd64.iso Ubuntu18.04.1 64 位桌面版本,本节将以该映像文件为例介绍Ubuntu 的安装过程。

在安装 Ubuntu 前,先按照创建和配置虚拟机章节的步骤创建一个VMware 虚拟机。打开VMware 软件,在主界面上选中需要安装 Ubuntu 的虚拟机,如下图所示

Wg01工业网关_IP_59


4.18 配置虚拟机


点击左侧的编辑虚拟机设置按钮,弹出虚拟机设置对话框,选择硬件标签页下的CD/DVDSATA标签,进入光驱的配置界面,如下图所示:


Wg01工业网关_Ubuntu_60


4.19 设置 ISO 文件


选择使用ISO 映像文件,并点击浏览按钮,添加Ubuntu ISO 光盘映像文件, 并确认已经勾选了启动时连接选项。配置完成后,点击确定按钮,返回VMware 主界面。

在主界面下,选中刚刚配置过的虚拟机,并点击左侧的启动此虚拟机按钮,则可以启动该虚拟机,开始进行Ubuntu 系统的安装。如下图所示:


Wg01工业网关_Ubuntu_61


4.20 Ubuntu 安装-启动虚拟机


Ubuntu 安装镜像正常启动后,会出现如下图所示的欢迎界面:

Wg01工业网关_Ubuntu_62


4.21 Ubuntu 安装-欢迎界面


在左侧列表中选择中文(简体),然后点击安装Ubuntu按钮,会出现键盘布局界面,请选择合适的键盘布局设定并点击继续按钮,进入更新和其他软件面,如下图所示:


Wg01工业网关_VMware_63


4.22 Ubuntu 安装-准备安装 Ubuntu


点击继续按钮,会出现安装类型界面,如下图所示:


Wg01工业网关_IP_64


4.23 Ubuntu 安装-安装类型选择


直接使用默认配置:清除整个磁盘并安装Ubuntu,点击现在安装按钮,会弹出一个确认将改动写入磁盘吗?的提示界面,如下图所示:

Wg01工业网关_IP_65


4.24 Ubuntu 安装-将改动写入磁盘提示界面


点击继续按钮,会出现地理位置选择界面,如下图所示:



4.25 Ubuntu 安装-地理位置选择


点击继续按钮,会进入用户信息设置界面,如下图所示


Wg01工业网关_VMware_66


4.26 Ubuntu 安装-用户信息设置


在该界面中配置登录 Ubuntu 时的用户名和密码,为了使用更为方便,可以选择自动登录选项,这样每次启动系统时,就不会出现系统登录界面,而是直接进入Ubuntu 桌面。设置完成后,点击继续按钮,会出现正在安装界面,如下图所示:


Wg01工业网关_Ubuntu_67


4.27 Ubuntu 安装-正在安装


耐心等待系统安装完成。系统安装完成后,会出现安装完成对话框,如下图所示:


Wg01工业网关_VMware_68


4.28 Ubuntu 安装-重启系统


点击现在重启按钮,重启后即可进入了Ubuntu 桌面环境。


在虚拟机的Ubuntu系统中安装Qt交叉编译环境

安装基本的开发环境

为保证后续的安装正常,我们先在虚拟机中安装基础的开发工具。打开终端,执行如下命令:

sudo apt install g++ make


Wg01工业网关_Ubuntu_69



使用脚本构建qt交叉编译环境

我们提供了简化安装的脚本,使用这些脚本,可自动完成gcc交叉编译工具的下载和安装,并可自动下载qt源码,再使用交叉编译工具编译安装qt。

我们首先将提供的脚本传递到虚拟机中,为提高所需资源的下载速度或防止所需资源的链接地址失效,也可以将相关资源文件从我们提供的网盘中拷贝到脚本文件所在的目录中,如下图所示:

Wg01工业网关_IP_70



再依次执行如下脚本:

sudo ./build-gcc.sh

sudo ./build-tslib.sh

sudo ./build-alsa.sh

sudo ./build-qt.sh


上述脚本分别会执行如下工作:

下载安装交叉编译工具到opt/ 目录下

下载并交叉编译tslib库,再安装到/opt/ 目录下

下载并交叉编译alsa库,再安装到/opt/ 目录下

下载并交叉编译qt开发环境,再安装到/opt/ 目录下


全部执行成功后,在/ 目录下将包含如下内容:


Wg01工业网关_IP_71



最后,将/opt/qt-everywhere-src-5.11.3/bin目录添加到PATH环境变量中去:

export PATH=/opt/qt-everywhere-src-5.11.3/bin:$PATH

注意,为防止关闭终端后,该环境变量不保存,最好在 文件中添加该语句


至此,虚拟机中的qt交叉编译环境已经构建完成,可以使用该虚拟机开发和编译能运行在arm架构的wg01网关设备上的qt程序了。

如果上述过程中有错误,可以将opt/ 目录下的内容全部删除,并再次尝试。


使用虚拟机交叉编译环境开发HelloWorld程序

进入虚拟机,创建一个目录qt-demo

mkdir qt-demo

cd qt-demo


在qt-demo目录下编写两个文件

vi hello.pro

vi main.cpp


其内容分别如下:


Wg01工业网关_VMware_72



Wg01工业网关_IP_73



再使用如下命令编译hello程序,即可得到一个可执行程序hello:

qmake

make


但这样编译得到的可执行程序在虚拟机中无法运行,这是因为我们使用的是交叉编译工具,编译的arm架构的可执行程序,无法在x86架构的虚拟机中运行,我们需要把这个可执行程序拷贝到wg01网关上才可以运行,如下图所示:

Wg01工业网关_VMware_74


在wg01网关上安装qt

我们在前面交叉编译的hello程序,无法在x86架构的虚拟机中运行,需要拷贝到arm架构的wg01网关中运行。但因为qt通常采用的动态链接方式编译运行,所以我们首先还需要在wg01网关上安装qt runtime库,也就是qt的各种动态链接库。

首先,打开虚拟机,进入/opt/ 目录,将其中的qt runtime库打包,并拷贝到wg01网关的/opt/ 目录下:

cd /opt

sudo tar -czf arm-qt.tar.gz ./alsa-lib-1.2.2/ ./tslib-1.21/ ./qt-everywhere-src-5.11.3/

scp ./arm-qt.tar.gz root@192.168.1.6:/opt/


其中,192.168.1.6是wg01网关在同一局域网中的ip地址。


然后,我们登录进入wg01网关,进入opt/ 目录,解包arm-qt.tar.gz,再将相关开发包的lib目录添加到LD_LIBRARY_PATH环境变量中去,便于系统搜索动态连接库时,会搜索这几个目录,如下所示:

cd /opt/

sudo tar -xzf arm-qt.tar.gz

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/alsa-lib-1.2.2/lib:/opt/tslib-1.21/lib:/opt/qt-everywhere-src-5.11.3/lib

注意,为防止关闭终端后,该环境变量不保存,最好在 文件中添加最后的export语句


至此,我们就完成了在wg01网关上安装qt runtime库。


最后,我们再将前面交叉编译的hello程序拷贝到wg01网关上,即可运行,如下所示:

Wg01工业网关_IP_75