Ubuntu firefly/pc 工业应用上位机系统开发常用命令及问题、SoC板运行环境配置


1. 常用软件安装

sudo apt-get install <pkg_name>

//工具类
sudo apt-get install git subversion #版本控制
sudo apt-get install net-tools #网络工具
sudo apt-get install synaptic #软件包管理器
sudo apt-get install fcitx fcitx-table-wbpy #输入法
sudo apt-get install scrot  #截屏
sudo apt-get install wmctrl #窗口信息查看工具
sudo apt-get install gnome gnome-session gnome-shell gnome-shell-extensions gnome-tweak-tool #桌面工具
//QT与编译环境
sudo apt-get install qt5-default qt5-doc qtcreator qttools5-dev
sudo apt-get install build-essential  #提供C/C++的编译环境
//QT模块
sudo apt-get install libqt5svg5 libqt5svg5-dev libqt5sql5 libqt5widgets5 
sudo apt-get install libqt5opengl5 libqt5core5a libqt5dbus5 libqt5gui5 
sudo apt-get install libqt5multimedia5  libqt5designer5 build-essential 
sudo apt-get install libqt5charts5 libqt5charts5-dev 
//外部库
sudo apt-get install libpython2.7-dev libboost-dev libreadline-dev
sudo apt-get install libboost-python-dev #下载系统默认版本,不匹配需要手动编译

2. 常用操作

2.1 安装编译qwt

1. 下载qwt源代码
2. 用qtcreator打开qwt-6.1文件夹中的qwt.pro文件,并编译
3. 用qtcreator打开qwt-6.1/src文件夹中的src.pro文件,并编译
4. 在终端进入刚刚编译生成的build-qwt-Desktop-Debug文件夹,运行安装命令:

sudo make install

2.2 添加开机自动调用自定义脚本

终端运行gnome-session-properties添加脚本

gnome-session-properties
# 触屏屏幕旋转脚本(根据实际情况选择矩阵)rotateAOCTouchScreen.sh
#! /bin/sh
# cw
xinput set-prop 'Silicon Integrated System Co. SiS HID Touch Controller' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1
# ccw
#xinput set-prop 'Silicon Integrated System Co. SiS HID Touch Controller' 'Coordinate Transformation Matrix' 0 -1 1 1 0 0 0 0 1
#
#上位机脚本 run.sh

2.3 用户脚本免密运行->给予sudo 免密码

sudo gedit /etc/sudoers
#文末尾添加
#sudo 免密码
%sudo	ALL=(ALL:ALL) NOPASSWD: ALL

2.4 配置网卡固定静态IP/配置双网卡

  1. 查询网卡配置
~$ ifconfig
## 获取 网卡名字 本例中为 enp6s0 和 enp7s0 
## 假如没有安装,通过如下命令安装
~$ sudo apt install net-tools
  1. gedit打开并修改interfaces文件
sudo gedit /etc/network/interfaces
# 在最后添加如下内容(将enp6s0修改为对应名字,指定ip、网关和掩码)
#配置网卡
#右边网口-连接控制器
auto enp6s0 
iface enp6s0 inet static 
address 192.168.1.10 
netmask 255.255.255.0 
gateway 192.168.1.0

#左边网口-连接MES
auto enp7s0 
iface enp7s0 inet static
address 192.168.2.10
netmask 255.255.255.0 
gateway 192.168.2.0
# 如果没有gedit 也可以通过vim修改或者安装gedit(如下命令行)
~$ sudo apt-get install gedit

注意:如果这样修改无效,直接在系统的网络设置中修改IPV4的自动为手动,输入相应的IP、掩码和网关并保存后重启

2.5 屏幕旋转

在终端输入
xrandr -o left 向左旋转90度
xrandr -o right 向右旋转90度
xrandr -o inverted 上下翻转
xrandr -o normal 回到正常角度

xrandr -o left 
xrandr -o right 
xrandr -o inverted 
xrandr -o normal 

注意:可以将命令写成脚本添加到开机运行项中或者直接写在开机运行项中

2.6 安装boost库和readline库

在终端输入

sudo apt-get install libboost-all-dev
sudo apt-get install libreadline6-dev 

2.7 替换国内源

  1. 更改文件权限使其可编辑,在终端输入
sudo chmod 777 /etc/apt/sources.list
  1. 打开文件进行编辑
sudo gedit /etc/apt/sources.list
  1. 备注掉原来的地址,添加国内的源(如阿里源
# ubuntu 18.04(bionic) 配置如下(20220705)
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

#deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
#deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

2.8 重新烧写Ubuntu for firefly系统镜像

  1. 准备镜像(fire官网下载指定系统镜像)
    以fireflyRK-3288为例(下载地址
  2. 安装 RK USB 驱动
    下载 Release_DriverAssistant.zip ,解压,然后运行里面的 DriverInstall.exe
    注:为了所有设备都使用更新的驱动,请先选择"驱动卸载",然后再选择"驱动安装。若驱动存在问题,到官网下载最新版本(下载地址
  3. 下载烧写软件
    下载 AndroidTool_Release_v2.3.rar,解压,运行 AndroidTool_Release_v2.3 目录里面的
    AndroidTool.exe 即可
    注意:如果该版本烧写软件连接设备失败或者烧写失败,请到官网下载或者尝试别的版本的烧写软件;如果操作系统是 Windows 7/8,需要按鼠标右键,选择以管理员身份运行
  4. 连接设备
  • 确保设备连接好电源适配器并处于通电状态。
  • 用 Micro USB OTG 线连接好设备和主机。
  • 按住设备上的 RECOVERY (恢复)键并保持。
  • 短按一下 RRESET(复位)键。
  • 大约两秒钟后,松开 RECOVERY 键。
  • 注意:如果发现按了 RESET 键后还是没有发现设备,请在保持 RECOVERY 键按下的同时,长按一下 PWRKEY 键,然后才松开 RECOVERY 键。主机应该会提示发现新硬件并配置驱动。打开设备管理器,会见到新设备"Rockusb Device" 出现,如果没有,尝试重新安装驱动。
  1. 烧写镜像 XX.img文件
    以FIREFLY-RK3288-UBUNTU16.04-GPT-20200326-1507.img为例
  • 切换至"升级固件"页,如图所示。
  • 按"固件"按钮,打开要升级的固件文件。升级工具会显示详细的固件信息。
  • 按"升级"按钮开始升级。
  • 如果升级失败,可以尝试先按"擦除 Flash"按钮来擦除 Flash,然后再升级。
  • 注意:如果你烧写的固件 laoder 版本与原来的机器的不一致,请在升级固件前先执行" 擦除 Flash"
    烧写固件界面

2.9 Onboard 下载与设置

  • 下载安装:在Ubuntu 的软件库中搜索安装onboard 或者命令行安装
 sudo apt-get install onboard
  • 启动onboard键盘,设置成非固定,启动时隐藏,隐藏时显示图标,皮肤换成model M,布局换成compact型。在键盘­>高级设置里,将输入模式改为single­touch
  • onboard开机自启动
    终端运行 gnome-session-properties 添加命令行
#打开gnome开机运行脚本管理器
~$ gnome-session-properties
#添加脚本
~$ sudo onboard 

注意:可以将启动onboard键盘命令写成脚本添加到开机运行项中或者直接写在开机运行项中

2.10 关闭屏幕保护

对于机床用户来说,不想让屏幕一段时间之后自动熄灭。

  • 设置方法:修改lxsession设置
  • 修改文件: ~/.config/lxsession/Lubuntu/desktop.conf文件。将其中的 screensaver一项的等号后面设为 xscreensaver
  • 在系统菜单中打开屏幕保护程序的设置,将屏保设为disabled

2.11 限制用户进入系统

目的是用户只能看到软件界面,而不能进入系统进行其他操作。方法是不启动任务栏,不启动屏幕保护程序,同时不使用常见快捷键(例如Alt+Tab切换窗口,Alt+F4关闭窗口等)。

  1. 修改lxsession设置。需要修改的 是 ~/.config/lxsession/Lubuntu/desktop.conf文件。其格式类似于ini文件,都 是“key=value”键值对。将其中的panel应用程序名称删掉或注释掉(只删掉或注释掉等号后 面的value,不要去掉整行),例如 panel/command=或 panel/command=#XXX。
  2. 修改窗口管理器openbox设置。需要修改的是 ~/.config/openbox/lubuntu­ rc.xml文件。这是一个XML文件,在此文件中搜索关键词keyboard,找到配置快捷键的 部分,将不需要使用的快捷键注释掉。要注释掉的包括 Alt+F4, Alt+Shift+Tab, Alt+Tab等。

2.12 隐藏侧边工具栏和顶栏

安装gnome-tweak-tool工具和gnome-shell-extensions

~$ sudo apt-get install gnome-shell
~$ sudo apt-get install gnome-shell-extensions
~$ sudo apt-get install gnome-tweak-tool
  • 隐藏侧边栏(2种方法)
    方法1:在设置中选择dock栏,然后打开自动隐藏dock即可。
    方法2:使用shell扩展dash to dock
    安装方法:命令行安装或者在Ubuntu软件中直接搜索dash to dock安装
~$ sudo apt-get install gnome-shell-extension-dashtodock

设置方法:重启后在gnome tweak的扩展选项中找到dash to dock,根据自己的喜好设置后选择打开即可。参考Blog

#打开gnome-tweaks
~$ sudo gnome-tweaks
# 注:假如打开的设置界面没有拓展这一选项,不用sudo,直接打开 忽略权限问题
~$ gnome-tweaks
  • 隐藏顶栏(2种方法)
    方法1:使用shell扩展hide top panel
    安装方法:在Ubuntu软件中直接搜索hide top panel安装hide top panel拓展
    方法2:使用shell扩展hide top bar
    安装方法:命令行安装或者在Ubuntu软件中直接搜索hide top bar安装hide top bar拓展
~$ sudo apt-get install gnome-shell-extension-autohidetopbar

设置方法:重启后打开gnome tweak,进入扩展栏找到hide top bar,点击设置,根据自己的习惯对hide top bar进行设置。参考Blog

2.13 设置系统时间

  1. 查看当前系统的时间
~$ date -R
  1. 运行tzselect来选择时区
# 根据情况选择【这里选择4) Asia --> 9) China --> 1)Beijing Time --> 1) Yes】
~$ tzselect
  1. 再次查看时区,如果不是东8区,进行下一步4(或者直接跳过2执行4)
  2. 将Shanghai的文件复制到/etc/localtime目录下
~$ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  1. 设置时间(修改完后过一会系统会同步)
# 修改日期
~$ sudo date -s 11/28/20
# 修改时间
 ~$ sudo date -s 11:21:30
  1. 修改硬件的CMOS时间
# 修改 硬件CMOS时间
~$ sudo hwclock --systohc
# 注意: 这个步骤非常重要,如果没有这一步,重启后,时区又会发生改变
  1. 使用date查看当前时间
~$ date

2.14 修改语言系统

  1. 打开locale文件
~$ sudo gedit /etc/default/locale
  1. 注释掉原来的内容,根据相应格式添加
# 格式1
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"
# 格式2
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:zh

2.15 其他常用命令

  1. 快捷键打开终端 Ctrl+Alt+t
  2. 查询内核(linux内核版本号、gcc编译器版本号、Ubuntu版本号)
~$ cat /proc/version
  1. 查看显示linux的内核版本和系统位数
~$ uname -a
  1. 超级管理员
~$ su root
  1. 设置超级管理员
~$ sudo passwd root
  1. 查看当前使用内核版本
~$ uname -r
  1. 查看系统中安装了哪些内核
~$ dpkg --get-selections | grep linux
  1. 删除内核(举例、谨慎删除,可能会导致无法启动系统)
~$ sudo apt-get purge linux-headers-4.15.0-55
  1. 安装vlc
~$ sudo snap install vlc

3. 常见问题解决

3.1 解决编译时报错

cannot find -l****

解决方案:

  • 没有安装库
sudo apt-get install lib****-dev
  • 已经安装库但是找不到(在usr/lib目录下有这些库文件)
#  直接修复以下链接即可,例如依次执行
ln -s lib***.so lib***.so
  • 已经安装库但是找不到(在usr/lib目录下没有这些文件)
# 直接在系统根目录中依次搜索这些库文件
sudo find / -name "lib****.so"
# 使用命令将相应库文件拷贝到该目录中即可
sudo cp lib***.so /usr/lib

3.2 解决ubuntu20.04 下 lboost-python找不到或者libboost-python38报错的问题

  1. 下载boost源码Version 1.79.0
  2. 解压后定位到目录下
  3. 测试 python2 是否安装完成 :
	~$ /usr/bin/python2
		Python 2.7.18 (default, Mar  8 2021, 13:02:45) 
		[GCC 9.3.0] on linux2
		Type "help", "copyright", "credits" or "license" for more information.

4 使用python2编译,依次执行以下命令:

sudo ./bootstrap.sh --with-python=/usr/bin/python2
./b2
sudo ./b2 --install

注意:lboost-python找不到或者引用错误,可能是默认安装的 lboost-python库编译的环境不兼容导致的,应使用相应的Python版本进行编译
注:*Pyhton38 能够顺利安装从成功 *Pyhton27构建成功,但是安装失败(仍可使用)

The Boost C++ Libraries were successfully built!
The following directory should be added to compiler include paths:
    /home/admin1/boost/boost_1_79_0
The following directory should be added to linker library paths:
   /home/admin1/boost/boost_1_79_0/stage/lib
# 表示没有安装到local目录下
# 需要将  /home/admin1/boost/boost_1_79_0 添加到项目的 include paths中
# 需要将  /home/admin1/boost/boost_1_79_0/stage/lib 添加到项目的library paths中

注:可以选择使用命令行将boost_1_79_0和boost_1_79_0/stage/lib中的文件拷贝到系统的local目录下,再将相应目录添加到qt项目的路径中

3.3 编译时会出现错误“cannot find -lgl”

sudo apt-get install libqt4-dev
# 若编译失败,尝试执行以下命令安装build-essential
sudo apt-get install build-essential

3.4 firefly 初始密码

firefly账户默认密码为firefly

firefly

3.5 解决中文输入法问题

  1. 安装fcitx框架、工具和输入法(pinyin、sunpinyin等)
~$ sudo apt-get install fcitx fcitx-table-wbpy fcitx-config-gtk fcitx-sunpinyin fcitx-pinyin 
  1. 切换设置fcitx为默认输入法(二选一,某一种可能无效)
# 使用im-switch切换
~$ im-switch -s fcitx -z default
#或者使用im-config 切换
~$ im-config -n fctix
  1. 登出再登入或者重启系统

注意:

  • 如果遇到 “im-switch command not found” 的情况, 请使用im-config来配置,或者可以使用系统设置"System setting"里的“Text entry”进行图形化界面操作,同样可以添加已经安装的中文输入法。
  • im-switch 已经改为选装,im-config 改为预装,且im-switch 与 im-config 互不相容
  • 如果安装了im-switch后系统设置中不见了语言支持,原因是im-switch与语言支持不兼容,两者只能取其一,安装其一,若另一个存在则会被卸载。(使用如下命令重新安装语言支持)
  • 如果im-switch、im-config和语言支持都没有,那就装一个
# 装im-switch
~$ sudo apt-get install im-switch
# 装语言支持
~$ sudo apt-get install language-selector-gnome
# 装im-config
~$ sudo apt-get install im-config

3.6 解决触摸屏旋转后显示/触屏点位置不对

  1. 给旋转屏幕脚本加个延时rotate.sh
  2. 给旋转触屏点脚本加个延时rotateAOCTouchScreen.sh
    注释:根本原因是显示器没启动好,需要等待触屏显示器初始化完成后再运行脚本(有时候会遇到这个问题)

3.7 解决Firefly Ubuntu屏幕旋转后字体大小不对

Firefly Ubuntu Desktop 使用ff_rotate脚本来控制屏幕旋转

#查看脚本
root@firefly:~$ ff_rotate
        rotate screen and touchscreen
               run as root
               ff_rotate <orientation>
                    orientation: left, right, normal, inverted
# 使用脚本:参数为left, right, normal, inverted
root@firefly:~$ ff_rotate left
#注意要root权限,可以在su下执行

3.8 新firefly版卡配置案例和推荐安装步骤

新firefly版卡配置案例和推荐
板卡型号:fireflyRK3288 4G+32G
固件:FIREFLY-RK3288-UBUNTU18.04-GPT-20201102-1452.img 官方下载链接
参考步骤:

  1. 下载烧录固件(无需换源)
  2. 安装中文输入法
  3. 安装用到的相关软件
  4. 安装QT、qt的库、配置Qt环境
  5. 安装编译boost、python、readline等库
  6. 安装编译QWT
  7. 修改文件,使得可以免密执行脚本
  8. 关闭屏保和任务工具栏(修改 ~/.config/lxsession/Lubuntu/desktop.conf文件)
  9. 配置网卡 IP地址
  10. 添加开机自启脚本 (例:run.sh RotateTouchScreen.sh)
  11. su 管理员下运行 ff_rotate脚本,配置屏幕旋转

3.9 解决无法解析域名,无法下载软件的问题

  1. 终端打开 resolv.conf 文件
sudo gedit /etc/resolv.conf
  1. 添加域名服务器DNS
nameserver 8.8.8.8
nameserver 127.0.0.1
options edns0

注意:如果本来就有内容 就添加nameserver 8.8.8.8就行
还连不上那就换一个DNS
3.保存并关闭,测试一下

3.10 新topeet版卡配置案例和推荐安装步骤

新topeet版卡配置案例和推荐
板卡型号:topeet iTOP-3568 4G+32G
固件:update.img ubuntu 18.04 HDMI版本
参考步骤:

  1. 下载烧录固件(无需换源,如果无法解析域名参考3.9)
  2. 安装gedit 和 Firefox 浏览器
sudo apt-get install gedit firefox
  1. 安装qt、qt的库、配置Qt环境 (参考1)
  2. 安装编译boost、python、readline等库
  3. 配置双击解压(右键配置 命令 unzip)
#如果没安装,就安装一下
sudo apt-get install zip unzip
  1. 安装编译QWT
  2. 安装onboard并配置
 #如果没安装,就安装一下
sudo apt-get install onboard
  1. 配置显示,隐藏侧边栏,关闭屏保(有界面工具,不用命令行)
  2. 修改文件,使得可以免密执行脚本(参考2.3)
sudo gedit /etc/sudoers
  1. 添加开机自启脚本 (例:run.sh RotateTouchScreen.sh)
  2. 配置网卡 IP地址 (参考2.4)
sudo gedit /etc/network/interfaces

3.11 工控机配置案例和推荐安装步骤

工控机配置案例和推荐
系统:ubuntu20.04.4 LST
参考步骤:

  1. 设置主板(F2主板设置UEFI后关机,插入系统盘再进入后设置BIOS顺序)
  2. 安装系统,重启
  3. 设置管理员权限
sudo passwd root #设置管理员
su root #切换到管理员
  1. 设置免密
sudo gedit /etc/sudoers

#%admin ALL=(ALL) ALL
%admin ALL=(ALL) NOPASSWD: ALL
#%sudo	ALL=(ALL:ALL) ALL
%sudo	ALL=(ALL:ALL) NOPASSWD: ALL
  1. 安装软件,配置环境
sudo apt-get install gedit net-tools onboard 
sudo apt-get install gnome gnome-session gnome-shell gnome-shell-extensions gnome-tweak-tool gnome-shell-extension-autohidetopbar 
sudo apt-get install python2.7-dev #安装python2.7
#QT与编译环境
sudo apt-get install qt5-default qt5-doc qtcreator qttools5-dev
sudo apt-get install build-essential  #提供C/C++的编译环境
#//QT模块
sudo apt-get install libqt5svg5 libqt5svg5-dev libqt5sql5 libqt5widgets5  libqt5opengl5 libqt5core5a libqt5dbus5 libqt5gui5 libqt5multimedia5  libqt5designer5 libqt5charts5 libqt5charts5-dev 
#//外部库
sudo apt-get install libpython2.7-dev libboost-dev libreadline-dev

  1. 安装编译QWT sudo make install
  2. 手动编译 libboost-python-dev
 #1. 解压boost_1_79_0.tar.bz2
 #2. 进入解压后的目录 cd boost_1_79_0
 #3. 配置编译
  ./bootstrap.sh --with-libraries=all --prefix=/usr/local/boost --with-python=/usr/bin/python2.7 
  #4. 编译 
  ./b2 -j32
 #5. 将编译完的库安装到系统目录下  
 sudo ./b2 install --with-python include="/usr/include/python2.7" 
  1. 基础配置:onboard、dock隐藏侧边栏、隐私关闭锁屏、gnome-tweaks隐藏顶栏、关闭更新等(设置中界面工具)
  2. 添加开机自启脚本 (例:run.sh RotateTouchScreen.sh onboard)
  3. 手动配置网卡 IP地址
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.0
  • 18
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值