Linux远程编译

来源:互联网 发布:mac系统压缩文件 编辑:程序博客网 时间:2024/06/05 03:46

文章出处:http://blog.csdn.net/chenchong08

作者联系方式:vision_chen@yeah.net

嵌入式Linux的开发环境主要为以下两种:

1.虚拟机装Linux,使用虚拟机里面的的eclipse或者kde等软件编写编译代码;

2.虚拟机装Linux,使用VC写代码,然后用autotool等工具生成Makefile或者干脆自己写Makefile或其他编译规则来编译;

       第二种方式比第一种方式的先进性表现在写代码的方便,编译速度也比第一种快,但还是没有逃脱使用虚拟机的命运。

       虚拟机编译代码是比较慢的,尤其是代码庞大的工程,为了加快编译,我们一般都会再申请几台电脑,装纯Linux(我们一般称其为编译服务器),再使用distcc等分布式软件分布式地编译我们的代码,速度也确实比单纯的虚拟机编译快一点。但有些同事还觉得不够快,直接拷贝源代码进编译服务器编译,彻底摆脱虚拟机,编译完了再拷贝编译生成的可执行文件回本地电脑,编译速度也确实快了,但这种方式不方便修改代码,他们一般要改多的代码的话一般在本地使用VC修改,然后传回编译服务器编译,少的话就用vi修改,这种IDE的复杂性可能会很大的阻碍我们开发的效率。

        有没有什么方法可以让我们在本地使用VC写和修改代码,编译的时候再使用编译服务器的CPU的处理能力来帮我编译链接我们的代码,并省去我们拷贝代码进编译服务器和拷贝可执行文件到本地的这些麻烦的动作呢?

        要达到这个目的,我们必须得把我们的源代码目录共享给编译服务器,而在Linux和Window的共享且Window必须得作为Server的情形下,Samba不行,NFS可以吗?Windows可以开NFS Server吗?找了下资料是可以的,Miscrosoft免费提供一个SFU软件,使用它,你就可以在Windows里面很简单地开一个NFS Server并把你的源代码目录共享给编译服务器,编译服务器作为一个NFS Client挂载你Windows共享的源代码目录,在编译服务器上进入目录并执行编译命令来编译你共享的代码。今天上午搭建了一下SFU,并测试编译,速度可达到你拷贝代码进编译服务器的编译的操作。

     使用SFU,可以借助编译服务器的CPU处理能力来编译你Windows本地的代码,修改代码可以使用本地的IDE,不用拷贝代码进编译服务器,编译生成的文件也不用你从编译服务器拷贝回来,一切生成的文件都放在你本地的磁盘,这样就可以大大节省你编译的时间。