能在SSH上构建的C++集成开发环境

13

我们正在从C语言转向C++语言进行开发,但所有的构建服务器都运行在Linux上,而开发工作是在Windows机器上进行的。由于我们的C语言编辑器不太适合C++,因此我们正在寻找替代方案。

代码本身存储在连接到Windows的\\opt\code...类型的链接的构建服务器上。

我们需要SSH,因为这是与构建服务器的正常连接方式。我们希望有一个集成的解决方案,能够在编辑器中打开错误/警告信息。我们并不关心运行代码。

是否有任何免费的编辑器可以通过SSH执行构建?

谢谢。


抱歉,您是在寻找一个完整的IDE还是只需要一个程序员编辑器?如果您只是在寻找一个编辑器,我想VIM可能是一个不错的选择,虽然构建是通过make管理的。或者只需在Linux服务器上使用putty并运行“make”。 - BigMike
寻找一种能提高生产力的解决方案 :) 目标是一个好用的编辑器,可以进行构建并显示结果,以便“双击”可跳转到错误/警告。我们已经使用putty SSH -> 运行make util,但我们发现开发团队不喜欢这样做,因为需要他们来回切换并搜索文件和行,而不是像VS那样简单地点击。 - user626201
CodeWrite - 它有支持,但不是很好。 - user626201
1
你说过:“我们已经使用了Putty SSH -> 运行make util。”既然您已经有一个在远程运行的Windows命令行,应该可以将该命令行作为构建指令在Zeus IDE中运行,然后从Zeus内部导航到构建结果。但是Zeus不是免费的。还有一个免费的ZeusLite版本,它也应该能够做类似的事情 - http://zeusedit.com。 - jussij
1
根据@jussij的建议,你不能使用类似plink这样的工具来运行远程命令行(即使用-batch模式)- http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter7.html#plink - mrsheen
显示剩余4条评论
6个回答

6

NetBeans允许通过ssh进行构建。我们从Linux开发计算机使用此功能到Linux构建机。我不确定Windows到Linux是否可行。这是一个教程:教程


1
谢谢 - 虽然我们试图避免使用基于Java的IDE,但知道它能正常工作很不错。构建和集成似乎都很好。现在只要按alt-tab时不会一直选择文件就好了... :) - user626201
1
使用NetBeans已经有几周了,看起来它能够很好地满足我们的需求...尽管它是Java :) - user626201
2
是的,使用Netbeans可以从Windows到Linux上通过ssh进行构建! - user3366706
我本来想使用NetBeans的非常好的功能。然而,我发现在构建之前没有任何方法可以“source”脚本。这使得NetBeans对于许多严肃的项目非常不实用。令人遗憾的是,它仍然完全依赖于2017年的老旧unix makefiles。 - The Quantum Physicist

6
这个链接建议使用plink和一个能够运行plink作为编译器并捕获结果stdio和stderr输出的编辑器,这是可能的。

3
是的,plink似乎可以工作。这开启了一些机会,但之后需要将“点选式”集成编程到编辑器中。但是这对于其他自动化非常有用 :) 谢谢。 - user626201

1

你可以使用Visual Slick Edit,它有一个脚本语言,可以用来生成命令。顺便说一下,如果你的构建是基于Linux的,我建议你在Linux上进行编辑(那里有各种免费的程序员编辑器可供选择)。

在Windows中,几乎每个值得称为编辑器的编辑器都有管理构建的能力(通常通过make),因此即使是VIM或Emacs也可以成为生产力选择(是的,我不是IDE的铁粉,我的实际编辑器是带有大量vimscripts的VIM,是的,我有代码导航、错误浏览和打字速度快如闪电 - Emacs也可以做到同样的事情)。

Ultraedit是另一个能够通过ftp(也许是SSH)编辑文件的编辑器,但我怀疑它是否能生成远程make并获取结果。

如果你不依赖于构建,而只是编译,也许值得检查Cygwin项目,看看是否可以在Windows下安排编译,然后手动在Linux框中进行构建,这可能会消除编译问题(每个程序员都将在自己的框中编译,只有构建(编译+链接)会留在Linux框中)。


谢谢 - Cygwin是一个选择,但不想移动现有的文件数据库等。VIM和EMACS对我来说太多打字了 :) 我是一个点按和点击的人 :P - user626201

1

X11转发似乎无法正常工作。 Xming不想连接...也许是服务器设置的问题... - user626201
我们考虑过使用VNC,但在多用户环境下,共享屏幕等功能并不完美。我们在其他服务器上使用它,但有时会听到关于某个人将另一个人踢出的抱怨声在办公室里传开。 :( - user626201

0

不幸的是,我只得到了“进程以状态1终止”的信息。CB没有提供有用的调试信息来说明出了什么问题。 - user626201

0

您可以尝试使用Dokan SSHFS将代码挂载为每台Windows机器上的驱动器。然后开发人员可以自由选择任何IDE。


那怎么帮助在Linux构建服务器上调用编译器呢?问题不是关于如何挂载文件系统。 - Rob Kennedy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接