013-第二代上位机开发环境搭建

news2024/12/29 10:22:54
头图

第二代上位机开发环境搭建

文章目录

  • 第二代上位机开发环境搭建
    • 项目介绍
    • 虚拟机安装Debian 10
    • 文件传输
    • 远程调试
      • VNC
      • rsync
        • 下载
        • 安装
        • 验证
    • 配置远程调试环境
      • 配置远程设备
      • 配置 kits
        • Compilers
        • 配置Qtversions
        • 配置kits
      • 测试
    • 总结一下

关键字: QtQml关键字3关键字4关键字5

项目介绍

欢迎来到我们的 QML & C++ 项目!这个项目结合了 QML(Qt Meta-Object Language)和 C++ 的强大功能,旨在开发出色的用户界面和高性能的后端逻辑。

在项目中,我们利用 QML 的声明式语法和可视化设计能力创建出现代化的用户界面。通过直观的编码和可重用的组件,我们能够迅速开发出丰富多样的界面效果和动画效果。同时,我们利用 QML 强大的集成能力,轻松将 C++ 的底层逻辑和数据模型集成到前端界面中。

在后端方面,我们使用 C++ 编写高性能的算法、数据处理和计算逻辑。C++ 是一种强大的编程语言,能够提供卓越的性能和可扩展性。我们的团队致力于优化代码,减少资源消耗,以确保我们的项目在各种平台和设备上都能够高效运行。

无论您是对 QML 和 C++ 开发感兴趣,还是需要我们为您构建复杂的用户界面和后端逻辑,我们都随时准备为您提供支持。请随时联系我们,让我们一同打造现代化、高性能的 QML & C++ 项目!

重要说明☝

☀该专栏更新到第三代软件开发时将转为收费专栏

虚拟机安装Debian 10

应为我们硬件平台跑着的系统是Arm Debian 10 ,本着环境尽量一致的原则和尽快实现软件移植的目标,我们上位机也选着了Debian 10,关于虚拟机安装Debian 10 ,这里我就又要放链接了,当初应该就写过一次了,并且还录了视频,链接地址:http://t.csdn.cn/haZpY

image-20230711225642009

文件传输

文件传输,这个我用的就Xshell全家桶,文件传输就可以使用Xftp

image-20230713220447288

image-20230713220515897

远程调试

VNC

Windows端就不用多少了,就是一个exe ,直接下载安装就好了。那么我们就得说说Arm Debian Linux 下怎么安装了,老规矩,直接上连接http://t.csdn.cn/4nmbe

image-20230713220413821

rsync

这个工具主要是在Qt 配置Devices的时候需要用到,这里直接上步骤

下载

这里可以提前下载好rsync文件,也可以直接在线现在,直接下载就不说了,在线下载代码如下

wget http://mirrors.ustc.edu.cn/debian/pool/main/r/rsync/rsync_3.1.3-6_arm64.deb
安装

一句话的事。

sudo dpkg -i rsync_3.1.3-6_arm64.deb
验证

输入rsync可以看到下面的截图就算是完成了。

image-20230713214948695

配置远程调试环境

配置远程设备

第一步,咱先配置一下这个远程设备,这个就是咱前面安装rsync的前提,就是这里需要用,咱进到Qt的这个设置界面,看下面有一个Devices的选项,咱点击它,完了咱在看这个页面的右上角有一个Add的按钮。如选图所示

image-20230713215422491

经过上面怎么一顿点,就会弹出一个新的页面来,如下图所示,问咱们你要添加一个通用的LInux 设备,还是要一个QNX设备,咱设备肯定不是QNX设备,所以只能选择第一个。如下图所示。

image-20230713215446994

当咱选着第一个选项后,就可以看到下面的这个开始向导的按钮就亮了,点它,如下图所示

image-20230713215516270

紧接着咱就来的这个向导的第一个步骤 ,链接,这里需要给咱的设备起个名字,完了天下一下咱设备的IP地址,再设置一下咱这个登录的用户,就可以点击下一步了,如下图所示

image-20230713215532618

经过上面这么已配置,就到了这个Key 部署阶段了,这里直接默认就好了,直接下一步,如下图所示

image-20230713215544218

这里就是简单的概述一下,一个新的设备将会被创建,链接将会被测试,如下图所示,直接点击完成。

image-20230713215602527

经过上面,如果我们配置没有问题的话,就会有一个新的框框出来了,就是让我们输入刚才配置那个设备的那个登录密码,这里要记得你是那个用户登录的哦,不机会就回去看一下。如下图,输入咱的密码,点击确定就OK了

image-20230713215613689

那么,如果我们在看到一溜的不知道啥信息飞过,只要下面有那个 Device test finished successfully,就证明我们的设备搞好,如下图所示。点击关闭就好了。

image-20230713215624445

这就回到了我们的Devices界面了,为了让他生效,而且不关闭咱们这个Qt 的设置窗口,咱们点击一下下面的这个Apply,也就是应用按钮,如下图所示。这就完成了的咱们的这个设备的添加和配置工作了。

image-20230713215638839

配置 kits

完成了设备,这里咱们就需要在回过头来配置一下kits,如下图所示

image-20230713215710194

Compilers

因为这个kits有好多项目,咱们先来配置编译器,也就是Compilers选项,和前面的配置Devices差不多,咱们先选择这个Compiltes选项,完了再点击右上角这个Add的按钮,如下图所示

image-20230713215729997

在这个弹出的框框里面选择C,完了在选择GCC,如下图所示。

image-20230713215753896

在上面选择完了以后就要到弹出的文件夹框中选择我们编译器所在的路径了,这个每个人都不一样了,自己确定一下,如下图所示

image-20230713215810448

在下面界面的Name上,可以给这个编译器起一个我们自己喜欢的别名,如下图所示

image-20230713215824770

紧接着和添加C编译器一样,咱们一股脑吧C++编译器也给他添加了,如下图And 下图所示

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

image-20230713215849751

添加完了以后,同样,可以给咱们C++编译器起一个别名,最后别忘了点击下Apply按钮,让他们生效。

image-20230713215900014

配置Qtversions

完了我们在配置一下我们的Qt Versions,这个能,一般能卖你板子的厂家,都会给你一套的,你也可以自己编译,不过很痛苦,我也折腾了很久,基本就是基本的可以编译通过,但是那些多媒体 opengl 触摸屏啥的都没有过去,最后还是放弃了,这里我的建议就是有啥直接和厂家提,除非自己打算吃这碗饭。如下图所示,咱么在Qt Versions界面,咱们还是老样子,选择点击这个Add按钮

image-20230713215924517

在弹出的文件家中选择这个Qmake即可,正常我们选择完了,他就会自己解析这个对应的版本了。

image-20230713215936810

配置kits

虽然大标题开始是配置kits,但是前提条件得先整好,再配置这个kits就好了,基本就是填空,如下图所示,咱们在这个kits 的页面的,点击这个右上角的Add按钮,他就会给咱们新建一个出来

image-20230713220039811

剩下的就是填空,给这个kit起名字

image-20230713220101101

选择设备类型,开始建的啥类型,这里就选择啥类型,如下图所示

image-20230713220113210

选择设备,刚建的那个就选择哪个设备就行,如下图所示

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

选着编译器,刚开始建的那两个C和C++的编译器,对应的选上

image-20230713220139915

选着Qt版本,刚咱不是添加一个吗,就选择哪个。

image-20230713220151573

再Check 一下

image-20230713220201608

测试

这个没有啥好说的,就是新建的普通的不能再普通的程序,编译,运行的时候选择你刚配的设备间就可以了。他就会自己把编译好的程序复制到板子上运行了。

总结一下

其实这个时间点,我的第二版环境已经打包了,所以部分截图其实和面在凑的,比如Qt 的配置,其实是ubuntu环境的截图了,有Linux开发经验的应发发现了。不过不影响使用,哪个系统也都是这个逻辑。好了,下一篇咱们正式开始这个Linux的移植和开发。


博客签名2021

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1062820.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GitHub爬虫项目详解

前言 闲来无事浏览GitHub的时候,看到一个仓库,里边列举了Java的优秀开源项目列表,包括说明、仓库地址等,还是很具有学习意义的。但是大家也知道,国内访问GitHub的时候,经常存在访问超时的问题,…

云安全之等级保护解决方案及应用场景

等保2.0解决方案背景 适应云计算、移动互联网、大数据、物联网和工业控制等新技术发展,在新的技术场景能够顺利开展等级保护工作;《网络安全法》2016年已正式发布,等级保护2.0为了更好配合《网络安全法》的实施;等级保护1.0,在适…

U盘支持启动区+文件存储区的分区方法

准备新U盘 启动diskgenius ,先建立一个主分区(7G),剩余空间建立为第二分区,然后设定第二分区激活。 diskgenius格式化 用diskgenius格式化,在格式化的过程中有一个 写入dos系统的选项,在格式…

企业微信机器人对接GPT

现在网上大部分微信机器人项目都是基于个人微信实现的,常见的类库都是模拟网页版微信接口。 个人微信作为我们自己日常使用的工具,也用于支付场景,很怕因为违规而被封。这时,可以使用我们的企业微信机器人,利用企业微信…

抄写Linux源码(Day14:从 MBR 到 C main 函数 (3:研究 head.s) )

回忆我们需要做的事情: 为了支持 shell 程序的执行,我们需要提供: 1.缺页中断(不理解为什么要这个东西,只是闪客说需要,后边再说) 2.硬盘驱动、文件系统 (shell程序一开始是存放在磁盘里的,所以需要这两个东…

linux以太网(三).之netstat命令

引言&#xff1a; netstat命令是一个监控TCP/IP网络的非常有用的工具&#xff0c;它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息 语法选项&#xff1a; netstat [选项] -a或--all&#xff1a;显示所有连线中的Socket&#xff1b; -A<网络类型>或…

JUC第十五讲:JUC集合-ConcurrentHashMap详解(面试的重点)

JUC第十五讲&#xff1a;JUC集合-ConcurrentHashMap详解 本文是JUC第十五讲&#xff1a;JUC集合-ConcurrentHashMap详解。JDK1.7之前的ConcurrentHashMap使用分段锁机制实现&#xff0c;JDK1.8则使用数组链表红黑树数据结构和CAS原子操作实现ConcurrentHashMap&#xff1b;本文…

跨站脚本攻击(XSS)以及如何防止它?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 什么是跨站脚本攻击&#xff08;XSS&#xff09;&#xff1f;⭐ 如何防止XSS攻击&#xff1f;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#…

复习 --- 消息队列

进程间通信机制(IPC) 简述 IPC&#xff1a;Inter Process Communication 进程和进程之间的用户空间相互独立&#xff0c;但是4G内核空间共享&#xff0c;进程间的通信就是通过这4G的内核空间 分类 传统的进程间通信机制 无名管道&#xff08;pipe&#xff09; 有名管道&…

Linux Vi编辑器基础操作指南

Linux Vi编辑器基础操作指南 Linux中的Vi是一个强大的文本编辑器&#xff0c;虽然它有一些陡峭的学习曲线&#xff0c;但一旦掌握了基本操作&#xff0c;它就变得非常高效。以下是Vi编辑器的一些基本用法&#xff1a; 打开Vi编辑器&#xff1a; vi 文件名退出Vi编辑器&#xff…

[架构之路-232]:操作系统 - 文件系统存储方法汇总

目录 前言&#xff1a; 一、文件系统存储方法基本原理和常见应用案例&#xff1a; 二、Windows FAT文件系统 2.1 概述 三、Linux EXT文件系统 3.1 基本原理 3.2 索引节点表&#xff08;Inode Table&#xff09; 3.2.1 索引节点表层次结构 3.2.2 间接索引表的大小和表项…

@SpringBootApplication剖析

一、前言 在SpringBoot项目中启动类必须加一个注解SpringBootApplication&#xff0c;今天我们来剖析SpringBootApplication这个注解到底做了些什么。 二、SpringBootApplication简单分析 进入SpringBootApplication源代码如下&#xff1a; 可以看出SpringBootApplication是…

【C语言】动态通讯录(超详细)

通讯录是一个可以很好锻炼我们对结构体的使用&#xff0c;加深对结构体的理解&#xff0c;在为以后学习数据结构打下结实的基础 这里我们想设计一个有添加联系人&#xff0c;删除联系人&#xff0c;查找联系人&#xff0c;修改联系人&#xff0c;展示联系人&#xff0c;排序这几…

数据挖掘(3)特征化

从数据分析角度&#xff0c;DM分为两类&#xff0c;描述式数据挖掘&#xff0c;预测式数据挖掘。描述式数据挖掘是以简介概要的方式描述数据&#xff0c;并提供数据的一般性质。预测式数据挖掘分析数据建立模型并试图预测新数据集的行为。 DM的分类&#xff1a; 描述式DM&#…

arm代码

RISC精简指令集 长度和执行周期固定 长度为一条机器指令在计算机占用的内存大小 指令周期为CPU执行一条机器指令所发费的时间(时钟周期由CPU工作频率决定) CISC复杂指令集 其架构一般用于PC端 X86和X64都是负载指令集CPU 更注重指令的功能性 指令周期和长度都不固定 ar…

014-第二代软件开发

第二代软件开发 文章目录 第二代软件开发项目介绍正式开始我们的Debian Qt 软件开发主题色QSS U盘检测QFileSystemWatcher 屏幕键盘LibUSB 使用 总结 关键字&#xff1a; Qt、 Qml、 U盘检测、 屏幕键盘、 LibUSB 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;这…

Qt 综合练习小项目--反金币(2/2)

目录 4 选择关卡场景 4.2 背景设置 4.3 创建返回按钮 4.3 返回按钮 4.4 创建选择关卡按钮 4.5 创建翻金币场景 5 翻金币场景 5.1 场景基本设置 5.2 背景设置 5.3 返回按钮 5.4 显示当前关卡 5.5 创建金币背景图片 5.6 创建金币类 5.6.1 创建金币类 MyCoin 5.6.…

GPT系列论文解读:GPT-2

GPT系列 GPT&#xff08;Generative Pre-trained Transformer&#xff09;是一系列基于Transformer架构的预训练语言模型&#xff0c;由OpenAI开发。以下是GPT系列的主要模型&#xff1a; GPT&#xff1a;GPT-1是于2018年发布的第一个版本&#xff0c;它使用了12个Transformer…

JavaEE 网络原理——TCP的工作机制(中篇 三次握手和四次挥手)

文章目录 一、TCP 内部工作机制——连接管理1. 连接(三次握手)(1).有连接和确认应答之间的关系(2). 通过客户端和服务器详细描述三次握手 2. 断开连接(四次挥手)(1)讨论“四次握手”中间步骤的合并问题。(2) 根据简单的 TCP 代码解释断开连接(3) 四次挥手中的两个重要的 TCP 状…

计算机网络-计算机网络体系结构-物理层

目录 一、通信基础 通信方式 传输方式 码元 传输率 *二 准则 2.1奈氏准则(奈奎斯特定理) 2.2香农定理 三、信号的编码和调制 *数字数据->数字信号 数字数据->模拟信号 模拟数据->数字信号 模拟数据->模拟信号 *四、数据交换方式 电路交换 报文交换…