在 V2EX 搜了好多帖子,看到大家从 win 切换到 mac 时少了 source insight 所带来的不习惯。 由于 V2EX 里的帖子有一些比较久了,现在 mac 平台阅读 c/c++代码使用什么 ide.只是阅读,由于代码量大,本地编译不现实。 最好是 mac win 跨平台的.
1
x1596357 2019-04-02 19:58:19 +08:00 via iPhone
qtcreator, 平时看 wine 代码 4 百万行都不怎么卡
|
2
imkerberos 2019-04-02 20:00:36 +08:00
没有.
|
3
hilbertz 2019-04-02 20:02:39 +08:00
vs, vsc
|
6
waruqi 2019-04-02 20:08:40 +08:00 via Android 1
understand
|
10
superzou 2019-04-02 20:36:26 +08:00 via Android
understand
|
12
52coder OP @hilbertz 装了 c/c++插件,实现不了查看引用功能,搜索了下还要装 gtags,现在在 windows 上试验,mac 上晚上下班回去试验。
|
13
fengjianxinghun 2019-04-02 20:56:48 +08:00 via iPhone
understand
|
14
ggicci 2019-04-02 20:57:48 +08:00
sourcegraph,还能自己搭私服
|
15
fengjianxinghun 2019-04-02 20:58:16 +08:00 via iPhone 1
mac/linux 调试我用 idapro 源码调试
看代码 understand 写代码 emacs |
16
kristpan 2019-04-02 21:16:34 +08:00 via Android
你们的 understand 用的盗版的吗?
|
19
sadhen 2019-04-02 21:48:09 +08:00
如果在参与开源项目的话,可以向 Intellij 申请 CLion 的 License
|
21
sinxccc 2019-04-02 22:25:36 +08:00
我选择 wine Source Insight..
|
22
zjsxwc 2019-04-02 22:26:48 +08:00 via Android
jb 家的不好用吗?
|
23
yuting0501 2019-04-02 23:19:16 +08:00 via iPhone 2
我觉得 VSCode 可以结束这个话题,配置好 intellisense,source insight 这种上古软件可以安心退休
|
24
hackpro 2019-04-02 23:22:38 +08:00
understand
|
25
wzhy 2019-04-02 23:40:25 +08:00 via Android
@x1596357 qtcreator 打开一个项目中的源代码文件( cpp),这个文件中有很多黄色的 warning (语法之类的),然后就相当卡,特别是改正了其中几个 warning 的瞬间,卡到爆……有没有办法解决?
|
28
lovedebug 2019-04-03 00:05:19 +08:00 via Android
opengrok ?万能
|
31
chiu 2019-04-03 00:40:01 +08:00 via Android
公司有配 SlickEdit 的 license,但我自己用不习惯,Mac 目前用 VSC,配合一些插件用还可以。
|
32
UFc8704I4Bv63gy2 2019-04-03 00:44:46 +08:00 via Android
codeblocks 了解下,我觉得是最好的代码阅读工具
|
33
52coder OP @yuting0501 决定折腾 vscode 了,有没有具体配置相关的教程?
|
34
leighton 2019-04-03 00:54:14 +08:00 via iPhone
我不信 qtcreator 还能比 vscode 卡
|
35
ourleven 2019-04-03 01:27:16 +08:00 via iPhone
竟然没人提 sublime
|
37
livepps 2019-04-03 08:26:01 +08:00 via Android
cmake 工程,clion 非常好用,如果不是,跳转可能有时候不准确。
|
38
BBCCBB 2019-04-03 08:37:53 +08:00
clion 或者 eclipse 试试
|
40
52coder OP @BBCCBB clion 基于 cmake,我现有的工程都是 makefile,楼上也有朋友说不是 cmake 工程跳转不准确,我昨天试验确实是这样。
|
41
x1596357 2019-04-03 09:39:09 +08:00 via iPhone
@wzhy 关闭 line annotation 试试,如果项目真的很大你要看完成索引没有,在右下角有个进度,没完成索引前 CPU 占用率是很高的
|
42
ww2000e 2019-04-03 09:40:58 +08:00
vim+ycm...
|
43
somebody 2019-04-03 09:43:33 +08:00 via Android
CLion,自己导入一下,生成 cmake 文件,再适当修改。
看 40 万行代码的 Android art 代码全靠它 |
44
x1596357 2019-04-03 09:44:08 +08:00 via iPhone
再不行的话,你可能需要关闭 clang 索引插件,大项目会吃几个 G 内存,你可能内存不足了。
|
45
juzipeek 2019-04-03 09:45:44 +08:00
可以尝试下 understand (收费),kdevelop (免费)
|
46
tcfenix 2019-04-03 09:47:02 +08:00
跨平台的话真心推荐 clion,保证 win mac 等各种平台统一的体验,甚至于其他语言,比如 Golang,JAVA,PYTHON 都能保证统一的手感.
clion 的跳转应该是基于 cmake 的,之前使用个 makefile 的时候就是我又自己手动维护一个 cmakelist 来保证跳转. |
47
eliteYang 2019-04-03 09:47:21 +08:00
clionvscode vs for mac
|
49
cstj0505 2019-04-03 09:56:18 +08:00
vim+ycm +1
|
50
GoodRainChen 2019-04-03 10:02:45 +08:00
居然没有提 xcode 的?
|
52
52coder OP @cstj0505 vim+ycm 跳转和自动补全可以实现之后,查看函数调用之类的呢?颜值党表示,vim 看起来有点古老了。
|
53
52coder OP @GoodRainChen xcode 是不是太重了?
|
54
CodingDoge 2019-04-03 10:17:13 +08:00
@waruqi 碰巧看到我司大佬😏
|
55
52coder OP @CodingDoge 你司大佬的 understand 怎么解决中文注释乱码问题的 @waruqi
|
56
boywhp 2019-04-03 11:24:13 +08:00
vim
|
57
yuting0501 2019-04-03 11:27:46 +08:00 via iPhone
@52coder VSCode 官方教程就可以了,Qt 我也用,流畅度没有其他人说的会比 VSCode 好
|
58
0871087123 2019-04-03 11:42:39 +08:00
understand
vim+YCM clion sublime atom nodepad++ sourceinsight 看啥情况咯,这些我都用 |
59
0871087123 2019-04-03 11:42:54 +08:00
对了还有 visual studio
|
60
0871087123 2019-04-03 11:43:30 +08:00
是了,mac 上面,那 visual studio 可以改成 vscode ………………
|
61
tomychen 2019-04-03 11:44:48 +08:00
如果说 vim 会不会挨喷...
vim + ctags |
62
LANB0 2019-04-03 12:04:26 +08:00
即使过了这么多年,依然没有可以替代 sourceinsight 的,win 下也是。函数列表(支持搜索),跳转到定义、跳转到调用处、引用全项目搜索。vscode+c/c++插件没有引用搜索、每次打开项目都很卡顿。clion 直接很多函数变量识别不到。understand 是最接近 si 的,三年前尝试了几天,还是换回了 wine+si,功能使用步骤太繁琐
|
63
karllynn 2019-04-03 12:41:54 +08:00
随便用啥看,vscode,vim 都行,虚拟机用 vs 看也有过
我讨厌 C++ |
65
wzhy 2019-04-03 12:54:53 +08:00 via Android
@x1596357 您说的没错,索引完不会卡,但是只要修改其中的一两行代码,它会重新索引,那一下特别占 CPU。
|
66
c9106 2019-04-03 13:03:37 +08:00
slickedit 完美代替 source insight
|
67
yuankui 2019-04-03 13:56:10 +08:00
|
68
lsmgeb89 2019-04-03 14:15:17 +08:00
VSCode 装微软官方的 C++ 插件,根据官方文档简单配下,只要不是大型项目(百万行级别的),性能都可以。
其实只要是 language server 实现的都可以用。 Source Insight 可以直接删掉了 |
69
fengjianxinghun 2019-04-03 14:18:02 +08:00
@lsmgeb89 完全不行,不信试一下 linux 源码
|
70
lixianhuei 2019-04-03 14:32:25 +08:00 1
很多人不知道一个神奇:IDA。我用来做逆向工程的,交叉引用,注释,图例,插件,什么都可以做,完美。。
用来读各种源码也爽翻天的。。 |
71
thinkloki 2019-04-03 14:32:28 +08:00
插眼求一个看 android 源码的工具。
|
72
livepps 2019-04-03 14:34:22 +08:00 via Android
@52coder 如果工程结构不复杂,自己写下 cmake 文件,复杂的 makefile 写成 cmake 那就头疼了
|
73
lsmgeb89 2019-04-03 14:38:49 +08:00 1
Google 搞的 clangd 应该是大杀器,不过还需要时间。
&t=2688s 视频里提到了 cquery 是现有比较成熟的方案。 |
74
lsmgeb89 2019-04-03 14:52:51 +08:00
@fengjianxinghun 公司里 170 万行的 C++14 的项目,主要是借助 cmake 生成的 compile_commands.json 配置 C++ 插件,VSCode 精确性和性能都还可以接受。
|
75
jfcherng 2019-04-03 14:53:05 +08:00
Sublime Text 的關鍵就是 LSP 的支持。
clangd / cquery 的關鍵都是生成 compile_commands.json。 cmake 的工程本身就有 flag 能生成 compile_commands.json makefile 的工程可以用 compiledb 生成 compile_commands.json Sublime Text + Clangd 踩坑: https://git.io/fjIrK |
76
lsmgeb89 2019-04-03 14:57:30 +08:00 2
|
77
Deville 2019-04-03 14:57:55 +08:00
昨儿 vs2019 不是发布了 Mac 版吗
|
79
qgymib 2019-04-03 15:11:02 +08:00
凡是用于阅读 C/C++代码的无脑推荐 eclipse cdt,凡是用于书写 C/C++代码的无脑推荐 visual studio
|
80
waruqi 2019-04-03 15:38:50 +08:00 via Android
|
81
fengjianxinghun 2019-04-03 15:47:33 +08:00
@Deville mac 版的 vs 那个就是收购的 monodevelop,只能搞 C#
|
82
Deville 2019-04-03 15:52:36 +08:00
|
85
fengjianxinghun 2019-04-03 16:10:30 +08:00
@waruqi Project->Configure Project->File Options-> Encoding
|
86
miscmz 2019-04-03 16:17:37 +08:00 via Android
vim,vscode
|
87
JasperHale 2019-04-03 16:39:21 +08:00
看代码+部分编辑 vscode+clang 跳转,结构体补全 /查看引用 等都可以胜任. Subline / atom 同理.
clang 的补全和提示比 gtags 要好. vscode+gtags 效果不佳,当然也可能是配置的方式不对... clion 基本完美,但是收费..比较吃内存吧,新版本应该好一些,N 久没用了. |
88
JasperHale 2019-04-03 16:41:34 +08:00
忘了 ps : 以上实践基于 c 而非 c++. vscode 的 c/c++插件,结构体补全不太好
|
89
HangoX 2019-04-03 19:11:55 +08:00
说 jetbrains 的,是没看过大项目吧。。。Android 源码要弄到比较小的范围才能索引,不然就挂
|
90
allenforrest 2019-04-03 19:14:23 +08:00
我靠,居然不用 Xcode 吗?重归重,但也要看你工程本身的规模啊。
|
91
52coder OP @JasperHale 我使用了 vscode + gtags,索引起来比较费劲,比如有些全局变量我想看哪修改的,shift+f12 有时候不灵,只能搜索。
|
93
52coder OP @allenforrest 阅读代码都是万行以内的小模块,15 最低配 pro,开 xcode 再开别的,内存扛不住
|
94
freedomshi 2019-04-04 11:11:21 +08:00
eclipse 了解一下。。。
|
95
52coder OP @freedomshi eclipse 放假了解下,目前在用 understand 和 vscode,understand 静态分析功能真心强大。
|
96
wenweihu86 2019-05-06 17:45:01 +08:00
试过了 vscode、slickedit,都没法替代 source insight。slickedit 最接近,但查看函数引用功能没有; vscode 就更差了,跳转到实现都没做好。
|
97
52coder OP @wenweihu86 跳转有时候都得卡一下,哈哈哈,全局变量看哪些地方调用,有的可以看,有的不可以看,但是界面漂亮,好看不好用,你有好的推荐没
|
98
Kellerman 2019-10-24 16:51:17 +08:00
@fengjianxinghun 可以吧,我就在看。
|
99
piapia 2019-11-26 02:15:58 +08:00
@lixianhuei #70 这个是啥神奇操作?请教下怎么导入源码呢?
|
100
liyafe1997 2020-10-19 15:52:13 +08:00
source insight 我最需要的功能就是看函数调用关系( Relation ),至今没找到哪个其它的工具能实现这个功能 。
|