您可以在 Windows PC 上拥有完整的开发环境,以创建和调试树莓派、BeagleBone 和其他 Linux 设备的C++程序。
您可能还喜欢:
终极物联网硬件比较指南
所有活动都在 Eclipse 中进行:构建可执行文件,将其部署到 ARM 设备,然后远程调试它。在这篇文章中,我们来看看如何做所有三个,所以不用进一步多做,让我们开始吧!
您获得什么体验
- 代码可以用Eclipse编写
- ARM Linux 目标的编译和链接发生在生成项目时。
- 启动调试会话时,可执行文件将部署到 Linux 设备,远程调试器将自动启动。源代码加载到编辑器中,执行在
main()
处停止。 - 您可以单步执行并进入代码、显示程序集、监视变量和表达式以及设置断点。
- 您可以在 Eclipse 中看到可执行文件生成的标准输出。
- 调试完成后,ARM 设备上的远程调试服务器将关闭。
系统准备
ARM Linux 设备上的软件要求
- 工作 SSH 连接
- 已安装 gdb 服务器
Windows PC 上的软件要求:
- Eclipse IDE(C/C++开发人员的版本)
- 臂交叉编译工具链。
没有特定的硬件要求。部署和调试通过网络进行。
准备 Windows 电脑
下载并安装臂-linux交叉编译工具链。该包可作为压缩存档提供。您可以将其提取到选择的位置。
检查您的主板文档,了解正确的文档。我选择了gcc-linaro-5.3-2016.02-i686-mingw32_arm-linux-gnueabihf与比格尔Bone、树莓派和哈东米卡合作
解压缩时,请注意启动具有管理员权限的解压缩实用程序(我使用 7-Zip)。这需要获取在提取过程中创建的正确符号链接。
如果使用 7-zip,则可以通过在 Windows 的”开始”菜单中查找 7-Zip 文件管理器条目来执行此操作,右键单击它,然后选择”作为管理员执行”。然后,导航到存档并提取它。这将为您提供一个工作交叉编译工具集。
然后下载并安装最新的Eclipse。这也作为存档。解压缩该(不需要管理员权限),也解压缩到选择的位置。
Windows 上的设置现已完成。
准备 ARM Linux 板
登录到 Linux 并检查调试服务器是否已安装:
gdbserver --version
如果没有,请安装它:
apt-get install gdbserver
创建一个工作目录,Eclipse 可以在其中部署和运行您的开发您可以自由选择该目录的名称。我叫 ~/bin
它。
ARM Linux 设备上的设置现已完成。
制定计划
通过双击Eclipse.exe在安装Eclipse的文件夹中打开Eclipse。
接受或更改建议的工作文件夹位置。您的项目将存储在那里。
文件 -> 新建 -> 项目
-
搜索C++项目并选择它。
-
项目名称: helloworld
-
使用默认位置
-
项目类型:你好世界C++项目
-
工具链:交叉 GCC
下一个 – > 下一个 > 下一个
-
跨编译器路径:浏览解压缩工具链的位置的bin子目录
-
交叉编译器前缀:臂-linux-gnueabihf-
前缀是工具链 bin 目录中大多数程序的文件名的固定开始(例如:arm-linux-gnuaabihf-gcc.exe)
完成
-
如果被要求”打开透视”,请执行此操作(通常,这只是第一次创建此类项目时才询问)。
-
在”问题”视图中可能会收到两个错误。我们不需要这些
右键单击错误标签 -> 选择全部
再次右键单击错误标签 -> 删除
右键单击项目名称 -> 属性 -> C/C++ 生成 -> 生成器设置
-
生成器类型:内部生成器
申请和关闭
右键单击项目名称 -> 生成项目
-
您的控制台应显示类似于此的输出:
16:56:52 **** Incremental Build of configuration Debug for project helloworld ****
Info: Internal Builder is used for build
arm-linux-gnueabihf-g++ -O0 -g3 -Wall -c -fmessage-length=0 -o "src\\helloworld.o" "..\\src\\helloworld.cpp"
arm-linux-gnueabihf-g++ -o helloworld "src\\helloworld.o"
16:56:53 Build Finished. 0 errors, 0 warnings. (took 808ms)
部署和调试程序
运行 -> 调试配置
右键单击 C/C++ 远程应用程序 -> 新配置
-
名称: helloworld 调试
主选项卡
项目 -> 浏览 -> helloworld
连接 -> 新建 -> SSH -> 确定
-
连接名称:如何命名 Linux 板,例如树莓皮
-
主机:Linux 设备的网络地址或 IP
-
用户:您的 Linux 帐户
-
基于密码的身份验证 ->密码
完成
C/C++应用程序的远程绝对文件路径 – > 浏览
-
这将在 Linux 设备上打开您的主文件夹。
-
选择您创建并确认的开发文件夹(我在
bin
准备步骤中调用的文件夹)。如果条目字段中未显示应用程序名称,请添加/helloworld
调试器选项卡 -> 调试器选项 -> 主
-
GDB 调试器:浏览
bin
解压缩工具链的位置的子目录,然后选择以 gdb 结尾的程序
exe)
应用 -> 调试
您现在正在调试应用程序。它在 Linux 设备上运行,但您从 Windows 计算机控制它。享受!