白桦的天空

第一次的心动,永远的心痛!
  首页  :: 新随笔  :: 联系 :: 管理

Debian 无桌面+QT运行环境

Posted on 2023-03-09 16:09  白桦的天空  阅读(598)  评论(0编辑  收藏  举报

原文链接:https://blog.csdn.net/weixin_45482852/article/details/126027678

 

Debian 无桌面+QT运行环境
1.运行平台X86-64位系统,安装debian系统。

2.选择无图形安装 方式;

3.语言选择,可以是中文;

安装选件:LXqt 与 gnome


3.更改语言由中文改为英文;

切换安装源 华为源:

sed -i "s@http://mirrors.163.com@https://mirrors.huaweicloud.com@g" /etc/apt/sources.list
1
sed -i "s@http://deb.debian.org@https://mirrors.huaweicloud.com@g" /etc/apt/sources.list
1
安装neofetch 检查环境

apt install neofetch
1

增加用户byna 权限

sudo vi /etc/sudoers
1
修改登录时间

/etc/default/grub
1
编译电脑安装NFS服务器,使用挂载

sudo apt-get install nfs-kernel-server #安装NFS服务器
sudo mkdir /BYNA # 创建共享目录
sudo chmod +777 /BYNA #修改共享目录权限
sudo vi /etc/exports #配置输出共享目录
/BYNA *(rw,sync,no_root_squash) #添加目录到最后,保存退出

sudo /etc/init.d/nfs-kernel-server restart #重启目录文件;

1
2
3
4
5
6
7
8
客户端、设备目标挂载

apt-get install nfs-common #手动安装 /sbin/mount.nfs是nfs-common

mount -t nfs -o nolock 192.168.1.50:/BYNA /mnt #将服务器挂载到本地/mnt目录下

 

1
2
3
4
5
6
X86 移植 qt(暂不成功)
直接安装Lxqt,qt的桌面环境可以直接运行qt程序;

apt install lxqt
1
lxqt 自动登录

安装QT(可选)
各个平台安装qt everywhere
https://www.cnblogs.com/findumars/p/5574536.html

sudo apt-get install libx11-xcb-dev #安装必要的库
sudo apt-get install libxrender1 #安装必要的库
sudo apt-get install libxkbcommon-x11-0 #安装必要的库
1
2
3
在服务器上解压qt everywhere

tar xvf qt-everywhere-src-5.14.2.tar.xz
1
在./configure前主动装好下面3个包

sudo apt-get install libX11-dev libXext-dev libXtst-dev
1
关键如何编译QT 源码,
1.如果设备为X86架构,直接使用gcc g++ 编译工具生成库文件,并复制移植到设备;
2.如果设备为arm架构,直接使用arm-linux-gcc g++ 编译工具生成库文件,并复制移植到设备;
配置参数, 不同QT版本,配置参数有有不同。

configure -h //查看全部配置参数;Configure should be run from the main Qt source directory.
1
./configure

然后 make && make install

make && make install
1
生成文件如下:

将文件目录放到nfs服务器

sudo vi /etc/exports

/home/byna/Desktop/qtnew *(rw,sync,no_root_squash) //添加目录
1
2
3
设备挂载服务器

mount -t nfs 192.168.1.50:/home/byna/Desktop/qtnew /mnt
1
systemctl 开机启动

在/etc/systemd/system目录下,新建qttest.service文件;

sudo vi /etc/systemd/system/qttest.service
1

[Unit]
Description=demo #当前配置文件的描述信息
After=network.target nginx.service #表示当前服务是在那个服务后面启动,一般定义为网络服务启动后启动

[Service]
WorkingDirectory=/home/test #工作目录
Type=forking #定义启动类型
ExecStart=/home/test/demo-start.sh #定义启动进程时执行的命令。
ExecReload=/home/test/demo-restart.sh #重启服务时执行的命令
ExecStop=/home/test/demo-stop.sh #定义关闭进程时执行的命令。
PrivateTmp=true #是否分配独立空间
Restart=always
RestartSec=5
StartLimitInterval=0
StartLimitBurst=5

[Install]
WantedBy=multi-user.target #表示多用户命令行状态

在更新完demo.service后,要重启服务的配置文件:systemctl daemon-reload