2022-05-23

开发环境整理

WSL2 的虚拟机一直放在机械硬盘上,突然想把虚拟机放到 SSD 盘上以获得更好的性能。但是,当前的 Ubuntu 系统已经膨胀到差不多 200GB 了,然而 SSD 盘只剩下 60+GB,无法将 Ubuntu 系统文件移动至虚拟机。于是考虑使用 ArchLinux 这个发行版本来重新做一个开发系统。

ArchLinux 在 WSL2 上的安装

在 WSL2 下安装 ArchLinux 还算是比较顺利,参考了这一篇文章:Install ArchLinux under WSL2

一些兼容性问题

  • 首先是 gcc 12 版本无法编译 1.70 版本的 Boost 库,后来升级到 1.79 版本可顺利编译成功
  • 还有工程中一些漏掉的系统头文件导致的编译错误,比如<limits>现在毕需要显示包含,Qt4.8 里的一个文件就存在这个问题,加了个补丁后解决掉了
  • 还有去掉了一些不必要的链接库,这个属于原来就存在的问题

升级和更新 NeoVIM 插件

顺利编译完成后,升级了 NeoVIM 的脚本及插件,添加 Lsp 相关的插件并重新配置,现在使用 NeoVIM 开发 c++ 项目变得非常的顺畅,源代码带语法着色,并且可全局查找 references,基本上 vscode 中 c++ 有的功能都包含在内了。配置工程仍然在我的 github 上:config of my NeoVIM

漂亮的语法着色

后记

  • 最终 ArchLinux 我还是移到了机械硬盘上,因为 WSL2 的虚拟机在 SSD 硬盘上会出现突然卡死的情况,这个问题在网上并没有找到很好的解决办法。虽然这次折腾看起来是失败了,但是却解决了工程中隐藏的问题,并降低了开发系统的大小。

  • 最初是想使用 Linux 来代替我的 Windows 10,但是我觉得我离不开 Windows 系统,所以还是得向 WSL2 妥协。

MATTHEW
桂ICP备17005075号