将NI Linux RT交叉编译工具链与Visual Studio Code结合使用

更新 Feb 25, 2025

环境

软件

  • Vehicle Communication Toolkit

操作系统

  • LabVIEW Real-Time (NI Linux Real-Time)

要使用VCOM实现自定义校验,需要创建Linux RT so文件。本文将介绍如何配置编译工具链以生成自定义校验的so文件。

所需软件

  • Visual Studio Code
  • GNU C&C Compilers for x64 Linux
  • MobaXterm
  • CMake
  • Ninja

安装Visual Studio Code

  1. 导航到Visual Studio Code安装页面
  2. 下载适用于Windows的IDE安装程序。
  3. 运行setup.exe。
  4. 按照屏幕上的提示进行安装。
  5. 完成后,启动Visual Studio Code。

安装Extensions

  1. 在Visual Studio Code中,通过单击IDE左侧的扩展图标打开“Extensions”窗格。

  1. 搜索并安装C/C++ Extension Pack。

安装C/C++编译工具链

  1. 导航到GNU C & C++ Compile Tools x64并下载适用于x64的Windows工具链。工具链是所需文件的压缩包,而不是安装程序。
  2. 提取工具链的内容并将其复制到C:\build\<toolchain version>\x64\ 。生成的文件夹结构应如下所示:

MobaXterm

MobaXterm将用作sFTP客户端,根据需要与NI Linux实时系统之间传输文件。Remote Host:Linux RT的IP地址。Specify username:Linux RT的用户名。

CMake

CMake是一个生成MakeNinja等构建工具所需文件的工具。为了方便使用,NI建议在安装期间将CMake添加到系统PATH中:

Ninja

Ninja是一个小型构建系统,也是CMake可以为其生成构建文件的工具之一。由于安装Ninja比简单地运行Windows安装程序要复杂一些,请按照以下步骤确保其配置正确。

  1. 下载适用于Windows的Ninja文件。
  2. 提取并复制Ninja.exe到合适的位置(例如,C:\Program Files\Ninja\ )。

  1. 可以将可执行文件添加到系统PATH中以方便使用。按Start+R打开运行窗口,然后输入sysdm.cpl并点击确定。这将启动系统属性窗口。
  2. 系统属性窗口中,导航到高级页面并选择环境变量(N)...以打开环境变量窗口。
  3. 环境变量窗口的系统变量部分,导航到并选择Path,然后单击编辑…
  4. 编辑环境变量窗口中,单击新建,添加新路径。
  5. 输入包含ninja.exe文件的目录路径(例如, C:\Program Files\Ninja\ )。单击“确定”
  6. 再单击“确定”两次以退出“系统属性”窗口。
  7. 通过运行ninja --version确认现在可以在新命令提示符中访问Ninja。

配置Visual Studio Code

  1. 启动Visual Studio Code。
  2. 从登陆页面选择Open Folder...File>>Open Folder...
  3. 导航到并选择之前创建的文件夹以在Visual Studio Code中打开它。

  1. 确认目录结构如下:

  1. 点击src文件夹中的*.cpp文件,修改int CAN_Transmit(nxFrameCANFD_t *nxFrame){}中的代码。
  2. 通过Ctrl+Shift+PView>>Command Palette...
  3. 在命令面板中搜索并选择Tasks:Run Task。这将拉出项目中可用的自定义任务列表。

  1. 从列表中,选择CMake Generate Build Files

  1. 在终端窗口中确认任务运行并成功完成。项目的build/目录中应该有几个新文件,其中包括一个用于构建输出的新bin/目录。
  2. 打开命令面板并再次选择Task:Run Task
  3. 选择Ninja
  4. 确认构建任务成功运行,并且<项目文件夹>/build/bin目录中现在有一个*.so文件。

编译工具链创建完成后,直接点击Build就可以生成so文件了,无需重复前面的步骤。