导入项目
将其他 IDE 类型的项目导入为一个新的 eide 项目
在 操作
视图中点击 导入项目
EIDE 将弹出选择列表,现在需要选择一个项目类型
目前我们支持 Keil
或 Eclipse
项目
虽然该插件有一些 “导入 xxx 项目” 的功能,但这不代表该插件必须和 xxx 开发环境一起使用;
相反,导入功能将提取目标项目的信息,并以此创建一个 eide 类型的项目,导入完成之后,eide 项目将与旧的项目失去关联。
Keil 项目
该导入功能不是 100% 适用于任何 Keil 项目
请查看 Keil 项目限制
在开始之前,你需要告诉 EIDE 你的 Keil 软件的安装位置,插件需要使用 Keil 内置的编译器
请参考安装部分
导入
再次强调:导入项目的作用是将Keil项目迁移到VSCode,导入后与原先的Keil工程失去关联。因此当你完成导入后再去修改Keil工程的配置, 这些改动并不会被同步到VSCode工程上。
打开 操作
栏,点击 导入项目
启动一个导入流程。
然后选择你要导入的 .uvproj
或者 .uvprojx
文件(.uvproj
代表 C51 项目,.uvprojx
代表 ARM 项目),点击 Import
按钮执行导入
一个提示信息将被弹出
是否与原有的 KEIL 项目共存于同一目录下? 如果选择 "No",你需要为 EIDE 项目指定存放位置 !
如果你想要让 新生成的 EIDE 项目
与 被导入的 Keil 项目
处于同一个文件夹下,请选择 是
如果没有错误产生,一个提示消息将弹出,现在你可以切换工作区以打开已导入的项目
配置
在导入完成后,我们需要配置项目,因为 eide 不导入 Keil 项目的编译设置
设置 RAM/ROM 布局: 配置 MCU 的 ram/rom 信息
首先,设置
使用自定义链接脚本
选项为false
.然后,点击
RAM And ROM Layout
条目上的更改
按钮以打开存储器布局编辑器
现在,你需要打开 Keil 项目,复制
ram/rom 布局数据
到 eide 的存储器布局编辑器
中,然后保存设置编译器选项: 复制 Keil 的
C/C++, Asm, Linker 编译选项
到 eide打开
Keil Project Options
->C/C++
, 复制 keil 编译选项到 eide 的构建器选项
视图复制 keil 项目的
Misc-Controls
到 eide 的Other C Compiler Options
中注意:执行该步骤时,要注意有些keil项目中的
Misc Controls
中可能包含一些通配符路径的参数,比如这样的:--depend .\OBJ\*.d
。 如果有遇到,则不要把该参数复制到eide设置中,因为eide插件不支持这样的通配符,这会导致编译出错。为
Asm, Linker
选项重复上述步骤.没有找到对应的选项大多数选项是相同的,如果你找不到一些选项,你可以直接在
Other C Compiler Options
中输入对应的编译器命令行参数检查
IncludePath, Macros
:检查已导入的 eide 项目中的
IncludePath, Macros
是否与原始的 Keil 项目一致如果有任何缺失或不正确的项目,手动补全它们
构建
完成上述步骤后,就可以开始编译项目了
如果存在编译错误,请根据错误提示进行处理
Eclipse 项目
导入
点击
导入项目
,在弹出列表中选择Eclipse
选择要导入的
.cproject
文件,然后点击Import
执行导入导入完成后,切换 VSCode 工作区
配置
处理不兼容的参数:
由于 Eclipse CDT 和 EIDE 之间的设计差异,EIDE 暂时不能兼容 Eclipse 项目中的一些项目属性和构建设置
导入完成后,将生成一个
.warning.txt
文件,其中记录了所有不兼容的 Eclipse 项目属性您需要根据这些属性的
名称
和值
的含义修改 EIDE 项目的构建器选项
,直到可以正确编译
构建
完成上述步骤后,就可以开始编译项目了
如果存在编译错误,请根据错误提示进行处理