看网上很多言论盛赞 M1 的兼容性,买之前我搜了下 B 站相关视频https://www.bilibili.com/video/BV1TK4y1L7DU (只是用作举例),觉得兼容性还不错
到手后用了一周发现是过于乐观了。
M1 对 X86 二进制文件的兼容性挺好,现在很多 App 甚至都有原生 ARM 版本。所以很多 app 和 x86 二进制文件都能完美运行。主要的问题出在涉及**C/C++**的编译流程上,老版本库尤其如此。在网上看到的很多人说 M1 兼容性好的操作是使用最新版。不得不说开发者社区很热情,很多开发工具 /库的最新版已经完美适配了 M1 。安装和使用都没有问题
老版本就是另外一种情况了。若干年前应该不会有人想到自己写的针对 X86 构建流程,有人会尝试在 arm 上去构建。所以涉及到**C/C++**编译的老版本软件很有可能会构建失败
我尝试安装 ARM 版的 python, 3.7 以下的版本还没有安装上。对老项目执行了pip install -r requirements.txt
numpy,scipy,pandas,cryptography 等接近十个涉及到 C 的库全部不兼容,惊奇的是把这些库升级到最新版都能正常安装,只有一个库不支持, 但是也有人放出了支持的 wheel 包。最后要想使用这些库,我还得对升级后项目做一个大测试
设想一下,以前用 x86 ,很多 github 项目拷贝下来就能正常运行的,用了 M1 后可能就不行了~~
因此个人还是觉得 M1 适合视频工作者 /移动端,前端开发人员。他们的工具不太涉及到老版本工具的 C/C++构建流程
综上,我在办公室放了一台台式机,安装了 Exsi, 虚拟了 ubuntu 和 windows ,ARM 不支持的时候走远程开发流程
用了一下 jetbrains gateway ,可惜,体验并不好
希望各位开发大佬下单的时候考虑一下自己工作流的兼容性,尤其是老项目的兼容性
也希望远程开发工具能给力啊,毕竟谁不想拿个轻薄本连强大的服务器远程开发呢~~~
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.