捣鼓了几下,终于搭建出了自己理想中的环境:使用运行在 Windows 上的 NetBeans 对运行在 VirtualBox 中的 Linux 进行“远程开发”。简单但颇有些心得,纪录一下。
在 VirtualBox 中安装 Linux
我选择 Debian 是因为它可定制性强,当然其他版本的 Linux 也应该没问题的。将它安装到 VirtualBox 中很容易,网上有不少图文教程。我装的时候,源用新浪的镜像,非常快!然后只选了 SSH server 和 Standard system utilities,没要桌面,因为没必要而且在虚拟机中比较卡。装好后再用 apt-get install 手动安装几个缺失的包:vim(默认的 Tiny vi 不好用)、g++ 和 gdb。另外 ll
这种别名默认也不能用,打开 ~/.bashrc 中的相关注释就能解决。
配置共享文件夹
为了让主机和客机互通有无,首先在 VirtualBox 中创建一个共享文件夹(设备→共享文件夹)。我的共享文件夹名为 linuz,指向 Windows 中的 D:/works/linux。接着在 Debian 中创建挂载点:mkdir /mnt/linuz
,并用 mount -t vboxsf linuz /mnt/linuz
命令挂载。最后在 /etc/fstab 中加一行:linuz /mnt/linuz vboxsf 0 0
,让 Debian 每次启动的时候就自动挂载。
配置端口转发
我在安装过程中,“网络适配器”使用的是默认的 NAT(网络地址转换),因此要想实现从主机到客机的 SSH 连接,还必须配置端口转发:选择“设备→网络适配器”,再单击“端口转发”,把“协议”设为 TCP,“主机端口”和“客机端口”都设为 22 即可。这样用主机的 SSH 客户端程序连接 localhost:22 就能访问客机了。
使用 NetBeans
新版的 NetBeans 自带了终端和远程开发的功能,很容易上手,另外还有一份官方教程 C/C++ 远程开发。大体上来说,就是用 NetBeans 创建一个 C/C++ 项目,项目文件全都放到前面所创建的共享文件夹中,再将开发主机设为 VirtualBox 中的 Debian,接下来的动作就和本地程序的开发没有两样。至此,环境已经搭建完毕,至少已经能完全满足学习的需要了。