0


Ubuntu22.04安装Qt5.14.2并配置项目环境,以及安装NoMachine远程桌面

本文用于记录机器人项目迁移到新主板的环境配置具体流程,方便后续查缺补漏。

主板装的是Ubuntu22.04.4。

1.安装Qt5.14.2

1)下载Qt

官方下载地址:https://download.qt.io/archive/qt/5.14/5.14.2/

考虑到官方下载速度太慢,可以通过网盘下载。

链接:https://pan.baidu.com/s/1dp2Ffigmn9vkRxgE9FGwvA
提取码:8209

2)给文件添加权限

chmod 777 qt-opensource-linux-x64-5.14.2.run

3)安装

./qt-opensource-linux-x64-5.14.2.run

安装的时候不联网可以跳过账号登录步骤。

安装地址 /opt/Qt5.14.2

具体步骤可以参考其他文章。

2.添加Qt图标

Qt安装完成之后,如果发现应用程序内没有启动图标,只能通过点击/opt/Qt5.14.2/Tools/QtCreator/bin/qtcreator来启动Qt。

解决办法如下:

1)进入目录

cp /usr/shhare/applications

2)创建desktop文件并给予权限

touch Qtcreator.desktop
chmod 755 Qtcreator.desktop

3)编辑文件

gedit Qtcreator.desktop

文件内写入:

[Desktop Entry]
Encoding=UTF-8
Name=QtCreator
Comment=QtCreator
Exec=/opt/Qt5.14.2/Tools/QtCreator/bin/qtcreator
Icon=/opt/Qt5.14.2/Tools/QtCreator/share/doc/qtcreator/qtcreator/images/creator-gs-01.png
Terminal=false
Type=Application
Categories=Application;Development;

其中Exec为Qt启动路径;Icon为Qt图标路径。

完成。

3.配置环境

1)安装C/C++环境

通过以下指令可以发现build-essential软件包,其内包含编译c/c++所需要的软件包。

sudo apt-cache depends build-essential

所以只需要安装build-essential软件包即可。

sudo apt-get install build-essential

2)安装缺少依赖

此时运行项目会发现有报错:

error: cannot find -lGL: No such file or directory

查阅Qt Wiki找到了解决方法:https://wiki.qt.io/Install_Qt_5_on_Ubuntu

然后发现在这篇文章中也有解决文件不会自动关联(Qt没有图标)的解决方法,与我上文一致O(∩_∩)O。

是因为缺少了一个依赖。

sudo apt-get install mesa-common-dev

然后就可以正常运行项目了。

4.安装NoMachine远程桌面

1)安装NoMachine

官方下载地址:https://downloads.nomachine.com/linux/?id=1

下载完成后拷贝至要安装的目录下解压。

sudo tar zxvf nomachine_8.11.3_4_x86_64.tar.gz

然后给文件添加权限。

sudo chmod -R 777 NX

进入到NX文件夹内就可以开始安装了。

cd NX

sudo ./nxserver --install

最后需要重启NoMachine服务。

sudo /usr/NX/bin/nxserver --restart

然后保证在同一网络环境下就可以连接。

2)配置虚拟显示器

需要注意的是,此时如果板子不连接显示器或者不使用HDMI显卡欺骗器,远程连接后依然黑屏无法操作,需要配置虚拟显示器。具体如下:

安装所需要的虚拟显示器软件:

sudo apt-get install xserver-xorg-core-hwe-18.04
 
sudo apt-get install xserver-xorg-video-dummy

安装完成后,在/usr/share/X11/xorg.conf.d/下添加xorg.conf 文件。

sudo vim /usr/share/X11/xorg.conf.d/xorg.conf

在文件内编辑以下内容:

Section "Device"
  Identifier "Device0"
  Driver "dummy"
  VideoRam 256000
EndSection
Section "Monitor"
  Identifier "Monitor0"
  HorizSync 28.0-80.0
  VertRefresh 48.0-75.0
  Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync
EndSection
Section "Screen"
  DefaultDepth 24
  Identifier "Screen0"
  Device "Device0"
  Monitor "Monitor0"
  SubSection "Display"
    Depth 24
    Modes "1920x1080_60.00"
  EndSubSection
EndSection
~           

保存退出后,重启主板。

5.固定串口设备的串口号

由于项目中同一串口设备存在多个串口号(连接了多个设备),所以只能通过分辨串口设备具体挂载在哪个物理接口(硬串口),从而固定多个相同串口设备的串口号。

udevadm info --attribute-walk --name=/dev/ttyACM0 |grep KERNELS

其中ttyACM0是当前设备。

然后在 /etc/udev/rules.d/ 文件夹下新建USB设备规则。

sudo gedit /etc/udev/rules.d/myrobot.rules

在打开的rules文件内输入以下内容:

KERNEL=="ttyACM*",KERNELS=="1-3.1:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="tty_battery"
KERNEL=="ttyACM*",KERNELS=="1-3.2:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="tty_radar1"
KERNEL=="ttyACM*",KERNELS=="1-3.3:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="tty_radar2"
KERNEL=="ttyACM*",KERNELS=="1-3.4:1.0", MODE:="0777", GROUP:="dialout", SYMLINK+="tty_humiture"

其中 MODE:="0777"表示给最高权限,SYMLINK+=“tty_batteery”是给设备起一个新名字。

保存退出后,重启主板。

至此串口设备的串口号固定完成,但当设备重新插拔后,一定要接到原来的端口。

参考博客

固定串口设备串口号的内容参考了下面这篇文章,其中讲的更加全面且详细,而本文仅说明了我所遇到的其中一种情况。

不能再详细的Ubuntu 多USB转串口教程https://blog.csdn.net/weixin_44037313/article/details/127172796

标签: ubuntu linux qt5

本文转载自: https://blog.csdn.net/INPO_T/article/details/137929304
版权归原作者 葭望十八 所有, 如有侵权,请联系我们删除。

“Ubuntu22.04安装Qt5.14.2并配置项目环境,以及安装NoMachine远程桌面”的评论:

还没有评论