工欲善其事,必先利其器!(如何在Window上读写Linux项目)
工欲善其事,必先利其器!(如何在Window上读写Linux项目)
目的及意义
本人是刚刚参加实习两个月的小白一枚,从事C/C++后端开发工作。接触过C/C++的都知道,写一些C/C++项目的时候,避免不了跟Linux打交道,网上很多的项目,都是一些基于Linux的服务。当我们想学习这些项目的时候,如果没有一套方便读写代码的工具,那将会让你举步维艰。
记得我第一次写项目的时候,因为不熟悉Linux,也不想用vim去读写代码,活生生将一个Linux上的聊天室项目,改成了Windows环境下的项目,虽然改动不大,但是也耽误了很多时间,并且很多项目根本就无法移植。
今天正好是新的一年的第一天,首先祝大家新年快乐!在这新的一年里,还想更努力一些,就从写博客分享交流技术开始吧。我将会介绍我自己使用的一套工具,大佬忽略,勿笑。对于像我们这些还未入门的小白来说,这确实是一件很头疼,却又很难独自完成的一件事。所以,希望这个教程能够帮助到一些小伙伴吧~
准备工作
需要准备的工具:
- 本机搭建Linux环境(至于怎么搭建,教程很多也很简单,这里不做赘述)
- VMware虚拟机
- MobaXterm / Xshell
- 读写代码工具
- SourceInsight
没错!需要的东西就这点,如果大家下载不到,可以私信找我要~
搭建流程
其实整个流程中的难点就是如何将虚拟机上的代码共享到本机上,方法很多,我只介绍我用的;
1.首先确保宿主机与虚拟机能ping通;这里需要在VM里修改虚拟机的网段:
打开VMware----编辑----虚拟网络编辑器;
然后将其改成图片中这样~
2.重启网络服务:$ service network restart
3.如果在主机上能够ping通虚拟机,那么开始下一步;
- 首先,用Mobaxterm连接虚拟机,确保虚拟机中有ssh服务并且已经打开;
不管有没有,执行这个命令准不亏:$ sudo apt-get install ssh
- 然后开启服务:
$ ssh start
- 然后打开Mobaxterm,选择左上角Session----SSH,如下图操作:
- 然后简单介绍一下samba:
Samba是Linux和Unix上实现SMB(server message block)协议的一个免费软件,用于Linux和Windows主机之间共享文件之用;Samba既可以用于Windows和Linux之间的共享文件,也可用于Linux和Linux之间的共享文件;不过对于Linux和Linux之间共享文件有更好的网络文件系统NFS。
在Windows 网络中的每台机器既可以是文件共享的服务器,也可以是客户机;Samba也一样,比如一台Linux的机器,如果架了Samba Server后,它能充当共享服务器,同时也能做为客户机来访问其它网络中的Windows共享文件系统,或其它Linux的Sabmba 服务器。
我们在Windows网络中,可以直接把共享文件夹当做本地硬盘来使用。在Linux中,就是通过Samba向网络中的机器提供共享文件的,也可以把网络中其它机器的共享文件挂载在本地机器上使用。
Samba 主要是在Windows和Linux系统共存的网络中使用;如果一个网络环境里都是Linux或Unix类的系统,就没有必要用Samba,可直接用NFS。
- 下载Smaba服务(我用的是Ubuntu,所以下面的命令都是Ubuntu的)
$ sudo apt-get install samba
- 修改Samba配置文件
$ cd /etc/samba/
---- 进入配置文件所在文件夹$ sudo cp smb.conf smb.conf.bak
---- 先将配置文件备份$ sudo vim smb.conf
---- 修改配置文件 - 在文件结尾加上:
[share]
path = /home/share
available = yes
valid user = junbaba
browseable = yes
public = yes
writable = yes
- 创建共享目录,这个目录放哪里都可以,我放在/home目录下
$ cd /home
---- 进入home目录$ mkdir share
---- 创建一个共享文件夹,名字随意$ sudo chmod -R 777 share
---- 给文件夹加权限
4.完成以上基本上已经大功告成了,我们回到主机,打开我的电脑,如图输入: - 然后右键单击文件夹,选择 映射网络驱动器,然后点击完成,就可以看到如图效果:
这样就算共享完成了,只要虚拟机开着,你就可以随意操作此文件夹;
5.最后就是使用SourceInsight创建工程读写项目了;
- 打开SourceInsight,选择上面的project----new project----输入new project name ----OK然后如图:
- 然后就可以选择虚拟机共享的文件夹了,然后继续添加source file:
成功导入文件之后,选择close即可; - 附上最终效果:
现在就可以方便快捷舒适的读写项目了,在这里做的更改,直接相当于对虚拟机里的文件进行的读写,编译和调试还是要在Linux虚拟机中完成的,所以Makefile和gdb是一定要学的!