windows10上使用Visual Studio对树莓派进行交叉编译示例

本文主要介绍通过Visual Studio对树莓派进行交叉编译的方法。

1 环境

宿主机:

系统:Windows10

开发平台:Visual Studio 2022 (我用的是社区版)

VisualGDB:VisualGDB - Download (我下的试用版本)

GNU工具链: Prebuilt GNU toolchain for Raspberry Pi (我下的raspberry-gcc10.2.1-r2.exe)

目标机:

树莓派板子型号:树莓派4B

树莓派系统:Raspberry Pi OS

2 环境准备

2.1 宿主机环境准备

2.1.1 在windows系统上安装Visual Studio 2022,一路下一步;

2.1.2 双击安装VisualGDB,一路下一步;

2.1.3 双击安装raspberry-gcc10.2.1-r2.exe, 报错,如下图所示,

针对该问题进行了排查(如果你能直接运行一路下一步就不用排查了),试了很多方法,网上也查了很多资料,没头绪。后来凭直觉直接将该软件拖到VS2022中,单击运行,发现能进行下去,一路下一步,安装完成。

2.2 目标机环境准备

2.2.1 安装PI OS(方法在网上有很多,自己找);

2.3 连接

将树莓派接入无线网,保证能上网(一会VS会自动帮着装GDBServer),找根网线树莓派和笔记本相连,保证彼此间能Ping通;

3 创建一个简单的工程

如下图所示,创建一个"Linux Project Wizard"工程,在界面看不到的话,就在"Search for template"那个框中搜索,我就是这样找到的,然后单击"Next"

写入自己喜欢的工程名和自己期望的存放工程的文件夹,单击"Create",如下图所示:

单击"OK",如下图

单击"Next",如下图所示:

选择"Build The project locally with a cross-complier",在Cross-toolchain中通过选项选择"Raspberry PI in XXX",刚才装GNU工具链的地方,在"Deployment computer"中选择自己的远端的树莓派,在"Deloyment folder"中输入在树莓派中打算存放的应用程序的路径,单击"Finish",如下图所示:

VisualGDB会对所需的组件逐步检查,全通过的话会在左边打上绿色对号,不通过的话可以帮助在线安装该组件(上文提到要保证树莓派能联网的)。我的当时显示Checking GDB debugger那一项时打X了,起初我的树莓派没联网,老是提示安装失败。后来将树莓派联好网,很快就装上了,如下图所示,:

检查没问题后会自动创建出工程,在LinuxProject.cpp中已经自动生成了代码,如下图所示

在"return 0"前设置断点,然后单击VisualGDB Debugger,如下图所示,

在VisualGDB Output窗口会显示交叉编译调试的相关信息,以及打印出"Hello World",如下图所示,,单击小三角,使工程运行完。

为了保险起见,我使用Putty远程登录到树莓派上,进到之前设定的文件夹下,运行下该程序,确实能够显示"Hello, World!",如图所示:

相关推荐
hjjdebug1 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯1 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流1 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
斑布斑布1 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
Spring_java_gg2 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻2 小时前
Linux:认识文件系统
linux·运维·服务器
会掉头发2 小时前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★2 小时前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器
饮啦冰美式3 小时前
22.04Ubuntu---ROS2使用rclcpp编写节点
linux·运维·ubuntu