V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mianhk
V2EX  ›  程序员

2024 年, C++ 开发机选择: Mac 远程还是 Ubuntu 本地?

  •  
  •   mianhk · 7 天前 · 3673 次点击

    目前车端 C++ 开发,因为之前应用开发一直使用 Mac ,但是现在没法在 Ubuntu 编译,所以只能使用 vscode 远程开发,目前两种方式都使用了一段时间,目前优劣势比较,V 站大佬们都是怎么考虑和选择的:

    Mac

    优势

    • 操作习惯更熟悉,软件支持、显示界面、操作都更流畅

    劣势

    • Vscode 远程开发已经接近本地,但是仍然有些痛点:
      • 文件传输挂载到 mac 下,传输还是比较耗时,总感觉不是那么舒服
      • 有部分工具 Ubuntu 下用的更舒服,直接本地就可以。mac 下需要起 docker ,还没有那么及时获取到

    Ubuntu

    优势

    • 所有都是在本地,一致的开发体验

    劣势

    • 界面实在是难看,用起来没有那么丝滑,有时候感觉 Vscode 本地还没远程舒适
    • 快捷键啥的也很乱,用了改建,但是部分软件改的也没那么好
    • 编译有时候卡的本地没法进行其他操作
    47 条回复    2024-11-24 18:49:50 +08:00
    CassianVale
        1
    CassianVale  
       7 天前
    C++不都是用 VS 嘛
    lbp0200
        2
    lbp0200  
       7 天前
    windows+wsl
    HongDoNi
        3
    HongDoNi  
       7 天前
    你说的 mac 的劣势的第二点,好奇是啥工具?
    lts9165
        4
    lts9165  
       7 天前
    我服务端 c++开发就用 clion 直接远程服务器,感觉没有什么本地需求,完全 ok ,vscode 远程也用过,比 clion 更流畅体验应该更好
    aiqinxuancai
        5
    aiqinxuancai  
       7 天前
    想啥呢 肯定 windows
    hhjuteman
        6
    hhjuteman  
       7 天前
    我也投 windows + wsl 一票
    ftfunjth
        7
    ftfunjth  
       7 天前 via iPhone
    习惯用用 vim + tmux 就好了。 完全没有这方面的担忧。笔记本安装 arch dwm + st 那一套。
    CodeAllen
        8
    CodeAllen  
       7 天前
    必须 Windows + WSL
    FrankFang128
        9
    FrankFang128  
       7 天前
    Windows 是最好的 Linux 发行版
    originals
        10
    originals  
       6 天前
    Linux 图形界面体验太糟糕了,还行 mac 远程吧
    mightybruce
        11
    mightybruce  
       6 天前
    开发,我当然投 Ubuntu 一票, 你又不是什么设计师或者视频剪辑师,
    Ubuntu 变成 mac 界面也容易, 用 gnome shell 配合 Mac GTK theme 就行。
    mianhk
        12
    mianhk  
    OP
       6 天前
    @mightybruce 平常有的时候在家远程一下 或者业余用的也是 mac ,快捷键、逻辑来回切换也有些费精力,大概是年纪大了吧。
    mianhk
        13
    mianhk  
    OP
       6 天前
    @HongDoNi 有些 Ubuntu 本地编译的工具,要在 mac 用的话只能 docker
    mianhk
        14
    mianhk  
    OP
       6 天前
    @lts9165 嗯,Vscode 远程用了段时间,其实远程开发整体体验已经很不错了。就是文件传输还是有些痛点,没那么快
    AFOX
        15
    AFOX  
       6 天前   ❤️ 1
    Windows + VMware 装 ubuntu ,Windows 内存拉到 64G 以上,虚拟机内存多分一点,体验和在本地一样。

    你不妨说一下是什么工具只能在 Ubuntu 编译呢?如果是交叉编译的话,Mac 配置好应该也可以直接本地编译?
    mightybruce
        16
    mightybruce  
       6 天前
    @AFOX 只要用 Linux 系统调用相关的库,mac 根本不能解决,mac 和 linux 本身就不一样。
    glcolof
        17
    glcolof  
       6 天前
    我都是 Windows 装虚拟机……
    my3157
        18
    my3157  
       6 天前
    如果对 cpu 架构不敏感, 试试 mac 本地装 vm, 然后用 vscode remote

    我个人有一些强依赖 linux 环境的项目, 是用 VMware Fusion 装 debian sid, 开发的环境全部在 vm 里面, 本地只跑个 vscode, 体验还不错, 界面好看, 编译调试啥的完全和本地没区别
    mianhk
        19
    mianhk  
    OP
       6 天前
    @mightybruce +1 这个用不了的,就是在 Ubuntu 编译的一些工具
    @glcolof 虚拟机跨文件传输貌似更快些,公司的局域网总感觉没那么快
    @my3157 所以也感觉现在搜的一些 Ubuntu 桌面折腾越来越少了,是不是真的还是 vscode remote 已经足够普及了
    my3157
        20
    my3157  
       6 天前
    @mianhk #19 linux 桌面折腾好了还是能好看且丝滑的, 但太费精力了, 比较好看稍微不那么费事算是 manjaro 了, 有个联想小新的笔记本装了 manjaro, 不过好久没开机了, 对比 macos/windows, 在维护上好多花好几倍的时间精力
    liuzhiyong
        21
    liuzhiyong  
       6 天前 via Android
    我觉得国产的深度 Linux 很好。
    conn457567
        22
    conn457567  
       6 天前 via Android
    windows 是最好的 linux 桌面(🐶)
    Donaldo
        23
    Donaldo  
       6 天前
    Mac+远程,Linux 的桌面环境真不敢恭维,除非你只在这上写代码。
    minami
        24
    minami  
       6 天前 via Android
    能选 win/mac 就别选 linux 桌面,如果一定要选的话,也请远离 gnome
    wnpllrzodiac
        25
    wnpllrzodiac  
       6 天前 via Android
    wsl 有显卡直通,这一点已经是暴击了
    bluearc
        26
    bluearc  
       6 天前
    买个专门开发的 x86 小主机放工位上
    Lukedis
        27
    Lukedis  
       6 天前
    没有服务器吗,代码不会都在本地吧
    cookii
        28
    cookii  
       6 天前 via Android
    linux 小毛病多,搞正经生产还是不建议。
    realpg
        29
    realpg  
       6 天前
    windows
    8520ccc
        30
    8520ccc  
       6 天前
    前几天经历了 类似的选择 Linux 尝试了 Ubuntu Mint KUbuntu 等 但是都不太满意(可能相对来说 Ubuntu 最好了。。算是)

    非常折腾。最终选择了 Windows11 24H + WSL + Vscode Remote WSL

    之前是用的小主机+RemoteSSH
    ETiV
        31
    ETiV  
       6 天前
    Mac 下用 IDE 远程到 Ubuntu 上开发、调试啊,所有代码都在远程机器上,电脑直接用 MacBook Air 就够了,甚至丢了都不怕…

    文件传输,你服务器肯定开 SFTP 的,找个 Mac 的客户端就行了,把几个常用的路径收藏起来,便于快速访问

    Mac 下也有 dropzone ( https://aptonic.com ) 这种东西,常驻状态栏,鼠标拖东西过去就会自动触发某个行为,你可以配置用来无脑传文件到服务器上
    t41372
        32
    t41372  
       6 天前 via Android
    Mac 的话可以试试 OrbStack 。vm 基本就是 wsl 的体验,档案系统可以部分互通,可以直接 cd 到 mac 的目录下跑 linux 的命令。可以用 Rosetta 模拟 x64 。运行速度也很快,跑 docker 也比原版的 docker desktop 要快很多。
    huamu
        33
    huamu  
       6 天前
    windows + wsl
    Nasei
        34
    Nasei  
       6 天前
    @t41372 你肯定没用 arm 的 orbstack 编译过 x86 的大型 c++ / rust 项目,那个速度十分酸爽
    panlatent
        35
    panlatent  
       6 天前 via Android
    楼上推荐 windows + wsl 的,为什么我用起来有点别扭? 是姿势不对么?

    当然纯 docker 的话,wsl 确实比 orbstack 快一点

    主力是 mac studio ,回家用 windows 台式机。
    lbingl
        36
    lbingl  
       6 天前
    别 Windows ,我 wsl 老崩,内存和 CPU 占用一上来就崩,微软的稳定性真不用多说,懂得都懂
    lscho
        37
    lscho  
       6 天前 via iPhone   ❤️ 1
    推荐 wsl 的真的长时间使用过吗? wsl 经常崩,有时候崩的只能重装,这玩意根本不敢工作用
    574402766
        38
    574402766  
       6 天前
    Mac + 完全远程
    文件编译其他服务全放在 Ubuntu 服务器上,Mac 只是前端界面,Ubuntu 才是后端本体
    kzfile
        39
    kzfile  
       6 天前
    我是 windows+远程 Ubuntu ,反正远程了,windows 还是 Mac 无所谓了
    mianhk
        40
    mianhk  
    OP
       6 天前
    @t41372 Orbstack 我一直用,还是不太喜欢开,docker 镜像内存占用有点高
    @panlatent 现在是公司 mbp + Ubuntu 主机, 家里 mac mini ,一致的设备体验还是更好一些,但是公司用的时候还是有些痛点
    @lbingl 组里有人用 Windows + wsl ,忘了之前帮他看过个啥问题,就建议别再用了
    @574402766 远程拷贝文件,感觉还是没有那么快?
    Wkj1998
        41
    Wkj1998  
       6 天前 via Android
    台式 Ubuntu
    tyc
        42
    tyc  
       6 天前
    @CassianVale 车端
    jadeborner
        43
    jadeborner  
       6 天前
    为什么总有人推荐这个 wsl
    COW
        44
    COW  
       6 天前 via Android
    虽然我是 Windows WSL 忠实粉丝,但是 WSL 编译效率肯定不如原生 Ubuntu 的,涉及到一些底层 native 的代码可能还编译不过。我建议还是 VScode 基于 WSL 去开发,同时也可以执行其他操作,需要编译的时候同步代码到 Ubuntu 上执行。
    MortyP
        45
    MortyP  
       5 天前 via iPhone
    mac 的 orbstack 挺好用
    009694
        46
    009694  
       5 天前 via iPhone
    啊这 怎么会有人推荐 wsl 的。。
    mauis
        47
    mauis  
       4 天前
    嵌入式 c++ 开发,以前是用 archlinux kde 开发 vscode c++,代码量小,需要在样机边上调试,最近切换 Mac 下 vscode 远程到 ubuntu server 。还在尝试一件事情 Mac 上用 orbstack 直接编译 arm64 可执行文件。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5600 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 08:58 · PVG 16:58 · LAX 00:58 · JFK 03:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.