Nuclei Studio常见问题

Nuclei Studio IDE使用常见问题

1. Nuclei Studio启动慢

Nuclei Studio是基于eclipse进行开发,继承了eclipse的可扩展性的特点的是同时,也存在着启动较慢的问题,第一次启动时,软件需要验证环境;生成常用的缓存文件;创建Workspace.在2021.09版的Nuclei Studio中,我们针对启动做了优化,在电脑性能足够的前提下,第一次启动Nuclei Studio能在一分钟内完成。

Nuclei Studio最佳运行环境:

  • Windows 10操作系统

  • 4G以上内存(2G可以被Nuclei Studio分配使用)

2. Nuclei Studio编译程序很慢

在测试使用过程中,我们发现Nuclei Studio在编译项目时会出现很慢的现像,经过排查发现,当电脑安装360杀毒软件时,编译指令执行很慢,退出360杀毒软件时,编译指令可以按正常速度执行。为了保障Nuclei Studio的正常使用,建议在使用时退出360等杀毒软件。

3. 打开/关闭Launch Bar

打开菜单栏\”Window -> Preferences\”,搜索\”bar\”,如图
9‑1,取消勾选第一个选项即可关闭Launch Bar。同理,想要使用Launch
Bar功能,请勾选此选项。

图 9‑1关闭Launch Bar

4. 使用Launch Bar

Smartchip Studio的Launch
Bar(下图中蓝色框内标注部分)是对后边下拉框中选中的调试配置对应的工程进行编译、调试和下载等操作,如需使用此部分请注意,图标是与下拉框中调试配置内容相绑定。下面详细介绍Launch
Bar各部分功能:

图 9‑2Launch Bar功能介绍

图标1:编译选中的调试配置对应的工程。此处选中的工程为5号下拉框选中的调试配置对应工程,并非Project
Explorer中选中的工程。

图标2:运行/调试选中的调试配置对应的工程。此处图标会根据下拉框4的内容变化。

图标3:退出下载/调试模式。

下拉框4:切换选择下载/调试模式。切换后会改变图标2的显示内容。

下拉框5:选中调试配置文件。此处的内容会影响图标1、2、3对应的工程。

齿轮图标6:打开当前选中的调试配置页面,可直接进行修改保存。

5. 不使用Launch Bar进行运行/调试

对于初次新建的工程,如果不使用Launch Bar功能,可以右键工程,选择\”Debug
As -> Debug
Configurations\”。在弹窗中选择工程对应的设置选项,这里以helloworld工程为例,如图
9‑3,选择\”helloworld_debug_openocd\”,之后选择\”Debug\”开始调试。

同理,初次运行需要右击工程,选择\”Run As -> Run
Configurations\”。在弹窗中选择工程对应的设置选项,之后选择\”Run\”开始运行。

图 9‑3不使用Launch Bar首次进行调试

若当前工程已按以上方式进行过调试或运行操作,可在上方按键中选择
的下拉选项,快速选择对应的工程设置进行调试。对于运行,可以在
的下拉选项,快速选择对应的设置。

6. Debug页面查看寄存器

进入Debug模式后,可能有些页面并不能第一时间找到,这里以查看寄存器栏目为例。在菜单栏选择\”Window
-> Show View ->
Registers\”打开寄存器栏目。同样,如果想查看内存,可以选择\”Window -> Show
View -> Memory\”,想打开调试控制台,可以选择\”Window -> Show View ->
Debugger Console\”,其他页面此处不做过多介绍,请用户自行体验。

7. Debug页面结束进程

在Debug页面要退出调试,可点击
退出调试。为防止打开多个进程导致报错,在Debug页面,右击Debug栏目中的进程,选择\”Terminate
/ Disconnect All\”关闭所有Debug进程。

8. Nuclei Studio工具栏中各按键功能

在Nuclei Studio中,常见的工具栏图标如下,本节将依次介绍各按键的功能。

新建按键,包括新建各种文件和工程。

保存当前文件和保存所有未保存文件

切换编译设置,默认只有Debug和Release,用户可自行添加,这里不做介绍。

编译工程,可以在下拉选项中编译Project Explorer中选中的工程。

编译所有工程,一次性编译所有Project Explorer中的工程。

新建功能,包含工程创建,目录创建,文件创建和类创建。

调试,可根据下拉选项选择不同调试设置来调试不同的工程。

运行,可根据下拉选项选择不同的设置来选择不同的工程。

Profile ,使用Profile功能,暂不支持,此处不做介绍。

用户自定义工具,此处不做介绍,用户可自己深入研究。

搜索工具,可搜索任务,文本等。

文本阅读工具,可以展开或折叠文本等功能。

控制台工具,可选择打开各种控制台或串口等。

Debug用,前者跳过所有断点,后者实现Restart功能。

查看CMSIS ,eclipse自带功能,暂不支持。

Nuclei SDK工程设置工具,参见6.1。

文本阅读工具,可设置快速跳转,具体功能此处不作过多介绍。

9. 显示其他窗口

在IDE的右上角
按键可以切换不同的显示模式,常用的是C/C++页面和Debug页面。其中,在进入Debug模式时,若不在Debug页面,会有弹窗提示,此时点击\”Switch\”选项可以切换至Debug页面。在菜单栏中选择\”Window-> Perspective -> Open Perspective\”可以快速切换显示窗口。

在不同的窗口下,\”Window -> Show View\”显示的内容也不尽相同。如图
9‑4,在Debug窗口中可以选择显示如寄存器(Registers),内存(Memory)和调试控制台(Debugger
Console)。

图 9‑4Debug模式查看功能窗口

10. 恢复默认窗口布局

在菜单栏中选择\”Window -> Perspective -> Reset
Perspective\”,在弹窗中选择\”Reset Perspective\”可以恢复窗口默认布局。

11. 对比历史文件

右击要查看历史的文件,选择\”Compare With -> Local
History\”打开历史记录。如图
9‑5,在打开的History栏目双击选择要对比的文件历史版本,可以查看文件变动历史。

图 9‑5对比历史文件

12. 新建工程时可能出现报错

新建工程时IDE需要索引整个工程,根据主机性能其所用时间不同。如果主机性能较差,可能会看到索引时产生error,索引结束后error会消失。如出现以上现象,请以编译时是否报错为准。

13. 新增Include路径出现缓存

在include页面新增路径时,可能会出现缓存的路径内容,此时点击Workspace或File
System选中后可覆盖其内容。

14. 设置页面栏目找不到

有时可能因为弹窗大小,部分设置栏目被隐藏起来,如图
9‑6,可点击红框中左右方向图标显示隐藏栏目。

图 9‑6显示隐藏栏目

15. 开发板下载速度很慢

如果遇到开发板下载速度很慢,甚至出现超时的报错,请切换至使用USB3.0接口,如果使用虚拟机开发,也请同时将USB接口设置为3.0。

16. Linux环境下多用户使用Nuclei Studio

如果需要多用户同时使用Nuclei Studio(不推荐),用户在运行Nuclei Studio时首先要打开菜单栏的\”Window->Preferences\”。在弹窗中需要修改三个地方:

  • 打开\”MCU->Global OpenOCD
    Path\”,\”Executable\”输入\”openocd\”,\”Folder\”输入\”\${eclipse_home}/toolchain/openocd/bin\”。

  • 打开\”MCU->Global QEMU
    Path\”,\”Executable\”输入\”qemu-system-riscv32\”,\”Folder\”输入\”\${eclipse_home}/tools/qemu\”。

  • 打开\”MCU->Global RISC-V Toolchains Paths\”,\”Default
    toolchain\”选中\”RISC-V Nuclei GCC\”,\”Toolchain
    folder\”输入\”\${eclipse_home}/toolchain/gcc/bin\”。

修改后点击\”Apply and Close\”保存并关闭设置弹窗。

17. 设备管理器中识别出两个串口

可能连接设备后在任务管理器中识别出两个串口,如图
9‑7,其中COM编号较大的是串口打印使用,可以使用串口调试助手等工具连接查看打印信息,但是请不要占用COM编号较小的串口。

图 9‑7设备管理器中显示两个串口

18. Nuclei Studio升级

一般情况下,如果Nuclei Studio没有大的版本变动,Nuclei Studio升级工作可以由用户下载最新的GNU工具链以及其他相关工具和升级IDE Plugins的方式来完成。

19. GCC/OpenOCD等工具链的安装

Nuclei Studio已经把工具链集成在IDE内部,工具链存放在NucleiStudio_IDE_XXX文件夹内,路径为:NucleiStudio_IDE_XXX\NucleiStudio\toolchain。IDE默认使用此路径的工具链,所以请不要移动\”toolchain\”此文件夹,使用IDE创建工程后也不需要进行工具链的相关配置。

由于工具链升级的速度会比IDE快,所以后期需要用户手动升级工具链,工具链升级方法如下:

  • 首先删除需要更新的GCC或者OpenOCD文件内的内容,然后在芯来科技官网下载最新版本的GCC或者OpenOCD。

  • 将GCC或者OpenOCD的内容复制到对应的文件夹下,即可完成IDE工具链的更新,IDE自带的工具链的版本号记录在ReadMe.txt中,如图
    10‑1所示。注意:要保证gcc所在的这一级目录文件夹名字不变,替换后保证bin文件夹所在层级是图中文件夹的子目录,中间不要有其他文件夹。

}

图 10‑1IDE工具链路径

20. IDE Plugins升级

Nuclei Studio支持IDE内在线升级,步骤如下。

  • 如图 10‑2,打开安装软件弹窗,在菜单栏选择\”Help Install New Software\”。

  • 如图 10‑3,点击\”already installed\”打开已安装界面。

  • 如图 10‑4,选择\”Nuclei Studio\”,点击\”update\”即可自动完成在线更新。

图 10‑2打开安装软件弹窗

图 10‑3打开已安装界面

图 10‑4选择\”Nuclei Studio\”更新

21. 下载新版IDE后发现找不到“New Nuclei RISC-V C/C++ Project“

因为NucleiStudio的个性化设置的配置存放在workspace中,而202204版之前的NucleiStudio中没有“File —> New —> New Nuclei RISC-V C/C++ Project“,所以会找不到,如果找不到,可以通过找到“File —> New —>Project“,然后在弹出框中选中C/C++中可以找到“New Nuclei RISC-V C/C++ Project“
图片alt

22. Linux下使用时报Could not determine GDB version after sending:riscv-nuclei-elf-gdb –version,response:的错误

第一次在linux下使用NucleiStudio时,会报错Could not determine GDB version after sending:riscv-nuclei-elf-gdb –version,response:,如图

图片alt
可以使用命令查看,依赖缺失
ldd riscv-nulcei-elf-gdb
图片alt
使用命令安装相关依赖后,ide运行正常,具体可以参考
sudo apt install libncursesw5 libtinfo5
https://github.com/riscv-mcu/riscv-gnu-toolchain/issues/9