moo*_*ose 7 yocto visual-studio-code
是否有方法或步骤可以将 yocto SDK(标准或可扩展)与 VSCode 集成?我想使用 yocto 生成的 Linux 映像在 VSCode 中针对目标硬件交叉编译、远程连接和调试 C/C++ 应用程序。这可能吗?我知道 bitbake 扩展,但找不到适用于 SDK 的扩展。谢谢你!
保守地说,我想说这取决于您想要实现的集成级别,但我经常使用 VS Code 进行编辑和构建,有时使用 Yocto 工具链调试 C 应用程序,这对于 Makefile 项目来说非常容易。
假设您不要求将 Yocto 集成到 VS Code 中(我不知道是否存在),而是真正使用 Yocto SDK 生成的工具,并且您已经熟悉 Yocto 工具链的用法。
我亲自从 Windows PC 远程在 Linux 服务器上进行编译。因此,该服务器包含我的项目和 Yocto 工具链。为此,我在 VS Code 上使用 Microsoft 的远程 SSH 扩展。从那里,我可以轻松编辑文件,进行编译,并且可以使用终端(但这超出了您的问题的范围)。
因此,如果像我一样工作或直接在 Linux 中工作,您可以创建一个 Makefile/CMake 项目。C /C++ VS Code 扩展是必须具备的。
每次开始工作时,您都可以从 VSCode 的终端窗口中获取 Yocto SDK 工具链并直接使用 make 进行编译。如果你想自动化构建步骤,你可以使用VS 的任务功能,例如它允许你启动构建脚本。
关于远程连接,VS的终端窗口还可以有多个子窗口,这些子窗口具有与目标的各种连接,例如SSH。构建脚本还可以使用 scp 将生成的二进制文件直接发送到目标,但您的问题对于您想要执行的操作含糊不清。
最后在调试方面,VS Code 很好地支持了 GDB,官方文档以及C++ 调试文档都是一个很好的开始。
在 Yocto 方面,您需要添加gdbserver
到目标上运行的映像,可以通过将以下内容添加到您的conf/local.conf
:
EXTRA_IMAGE_FEATURES += "tools-debug"
Run Code Online (Sandbox Code Playgroud)
如果您想获得目标上共享库的调试信息,还需要添加:
EXTRA_IMAGE_FEATURES += "dbg-pkgs"
Run Code Online (Sandbox Code Playgroud)
最后,必须使用与目标上运行的映像相同的选项生成 SDK,并且包含要在主机端使用的跨 gdb 工具,例如 -gdb。
所以这是可能的,但需要一些设置,尤其是调试部分。据我所知,没有 VS Code 扩展可以自动为您管理所有这些步骤。
归档时间: |
|
查看次数: |
4817 次 |
最近记录: |