weinizhongqing 发表于 2023-10-16 10:35:38

SourceInsight新建工程,相对路径和仅添加mdk所需文件

本帖最后由 weinizhongqing 于 2023-10-16 12:19 编辑

1.写在前面(笔者的废话)
使用了这么多ide,还是比较喜欢si写代码,并且边写边看代码是比较方便的。但是添加工程的时候一些问题比较烦恼。这边主要是si添加相对路径工程(方便代码随便搬移),和添加工程的时候一股脑全部添加进来找文件比较麻烦的问题。
2.新建相对路径的工程。
这边使用一下白老师的v6 ucosii的demo示例。
2.1新建工程
首先进入mdk的工程路径下面。我们的si工程就放到这个路径下面。(还有一点就是生成相对路径的脚本文件也需要同路径)

2.2打开si新建工程,添加工程名字和路径

然后ok就行
这边一开始的添加文件,我们暂时先不添加,直接close



2.3 设定相对路径 (如果你的工程已经添加好了文件想改相对路径的话也是同样适用的)
打开“project”点击“default project setting”


修改路径,../代表上级目录,

这边需要两个上级目录才到我们整个工程的目录所以填入上图

2.4这边相对路径已经建立成功了。先简单观看一下。(单纯是一个例子,如果需要只需要mdk相关文件直接跳到3)
添加目录下所有文件,然后Ok。

可以看到这边是已经成功了


3.使用脚本添加mdk工程相关文件。
为什么需要这个,上面添加的文件当中有很多,但是.c.h和txt文件已经九百多了。有很多不相关或者重复的文件我们工程是不依赖的。
脚本放到附录,这边感谢一个"鱼鹰单片机"大佬写的脚本。
原理是mdk编译生成的obj文件夹,脚本根据这个来生成目录。(所以我们得先编译一下工程,工程路径别带中文!!)
3.1添加脚本mdk_list.sh进去mdk工程目录,git执行一下生成两个包含路径的txt。

3.2简单看一下两个文件(可以跳至3.3)
可以看到这边是绝对路径

相对路径

3.3si导入相对路径的txt,也就是导入list


4.完成之后,SI的一些工作
到这边我们已经弄完了。
简单说一下si添加完的一些必要操作吧
4.1 同步文件
首先一些跳转白色的。

这边点击"synchronze files"同步一下文件


4.2 si自带的宏定义扫描
si缺点就是汇编还有一些宏定义没法关联显示(有更好的解决办法清大佬们赐教)
空白处点击右键,然后"edit condition"



可以看到一些可以扫出来


5.写在最后
这边已经结束了,如果大佬们有更好的ide或者有更好的方法,以及更好的显示汇编关联和宏定义的多多指教。
第一次在论坛写分享贴子,啰嗦了一点请大佬们见谅。
最后感谢同分类下“将Source Insight打造成好用的编辑器”的“WALL_E”大哥让我入坑SI。
感谢白老师维护一个这么好的环境,可以让这种小白在这里面学习到很多东西。




eric2013 发表于 2023-10-16 10:44:42

非常感谢楼主分享。

ps:图片得单独上传才行,我让我们工作人员帮楼主处理下。

weinizhongqing 发表于 2023-10-16 10:48:07

eric2013 发表于 2023-10-16 10:44
非常感谢楼主分享。

ps:图片得单独上传才行,我让我们工作人员帮楼主处理下。

不好意思,老师,第一次发帖不知道直接粘贴图片是不行的。麻烦工作人员啦,谢谢

eric2013 发表于 2023-10-16 10:54:09

weinizhongqing 发表于 2023-10-16 10:48
不好意思,老师,第一次发帖不知道直接粘贴图片是不行的。麻烦工作人员啦,谢谢

这个是我们论坛的bug,之前是可以复制粘贴上传的。{:33:}

浴火重生 发表于 2023-10-16 23:06:15

根本不需要这么麻烦,只要新建工程在当前目录下,自动就是相对路径随便整

浴火重生 发表于 2023-10-16 23:06:15

根本不需要这么麻烦,只要新建工程在当前目录下,自动就是相对路径随便整

浴火重生 发表于 2023-10-16 23:06:15

根本不需要这么麻烦,只要新建工程在当前目录下,自动就是相对路径随便整

l990308 发表于 2023-10-17 14:25:01

学习了      

weinizhongqing 发表于 2023-10-17 14:54:53

浴火重生 发表于 2023-10-16 23:06
根本不需要这么麻烦,只要新建工程在当前目录下,自动就是相对路径随便整

我之前试过了好像是不可以的,下面的文件还是绝对路径。一般都是建立了工程去里面修改一下工程相对路径才行

浴火重生 发表于 2023-10-17 15:35:23

weinizhongqing 发表于 2023-10-17 14:54
我之前试过了好像是不可以的,下面的文件还是绝对路径。一般都是建立了工程去里面修改一下工程相对路径才 ...

一定是你操作不对,si4都是自带相对路径,我们全公司几十号人都是这样操作当前目录默认都是相对路径,你这个方式适合SI3,SI4根本不需要

weinizhongqing 发表于 2023-10-17 20:43:49

浴火重生 发表于 2023-10-17 15:35
一定是你操作不对,si4都是自带相对路径,我们全公司几十号人都是这样操作当前目录默认都是相对路径,你 ...

您没好好看吧。
1.我这样子是为了和mdk工程放一块方便两个一起打开。
2.而且我这个方法也不麻烦,随便你怎么建立,增删文件,到头也就是设置一下工程相对路径。也就是只需2.3那一步。
3.而且最重要的是可以配合脚本根据mdk生成的依赖文件List添加文件,然后大部分宏定义都可以扫描设置出来。也不会多包含然后显示多个跳转还得点。

weinizhongqing 发表于 2023-10-17 20:48:20

浴火重生 发表于 2023-10-17 15:35
一定是你操作不对,si4都是自带相对路径,我们全公司几十号人都是这样操作当前目录默认都是相对路径,你 ...

刚刚测试了一下确实,只有在工程的最开始的目录下新建工程才是相对路径。只要不是工程一开始的那个目录都不行。现在已经习惯放到Mdk那边并且和相关文件配合使用了。

weinizhongqing 发表于 2023-10-17 20:58:18

浴火重生 发表于 2023-10-17 15:35
一定是你操作不对,si4都是自带相对路径,我们全公司几十号人都是这样操作当前目录默认都是相对路径,你 ...

最后还是感谢大佬告知,刚刚验证了,工程最开始的目录建立是添加就是相对路径。如果工程放到一开始的当前目录下确实不用这么麻烦。如果想放到其他地方比如project下面的话是不行的。只能按照上面2.3设置一下(也就是选择当前目录的意思)。

eeee 发表于 2024-4-28 15:54:28

工程默认是相对路径(.siproj),工作空间(.siwork)用的是绝对路径,移动项目路径后,工作空间就识别不对了,打开的文件就没了,但是项目路径还是正确的
页: [1]
查看完整版本: SourceInsight新建工程,相对路径和仅添加mdk所需文件