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

葭望十八 2024-07-05 10:37:02 阅读 74

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

主板装的是Ubuntu22.04.4。

目录

1.安装Qt5.14.2    

2.添加Qt图标

3.配置环境

4.安装NoMachine远程桌面

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

参考博客


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)给文件添加权限

<code>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++所需要的软件包。

<code>sudo apt-cache depends build-essential

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

<code>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。

是因为缺少了一个依赖。

<code>sudo apt-get install mesa-common-dev

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

4.安装NoMachine远程桌面

1)安装NoMachine

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

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

<code>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转串口教程

icon-default.png?t=N7T8

https://blog.csdn.net/weixin_44037313/article/details/127172796



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。