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

大型 c++项目,在 ai 帮助下完成 Linux 平台移植,可行性多大?

  •  
  •   wnpllrzodiac · 5 天前 via Android · 1774 次点击
    原项目是继续 windows 的,大量 windows api mfc atl 和 windows 资源的使用。还有 rpc 和跨进程的 handle 共享显示。几年前完成了 mac 的移植,做了大量的兼容和 stub 代码。平台宏定义满地都是。

    现在完成编译链接工作。运行起来各种 crash,几十年的祖传代码感觉用 ai 调内存问题也困难重重。

    是不是大公司项目方向对,在继续就行?最后能不能出东西,根本就没人管?
    14 条回复    2025-12-04 10:17:24 +08:00
    passive
        1
    passive  
       5 天前 via Android   ❤️ 1
    windows api 直接连接 libwine ,还挺稳定的。
    ui 迁移到 wx 。
    frayesshi1
        2
    frayesshi1  
    PRO
       4 天前
    直接上 Qt
    clemente
        3
    clemente  
       4 天前
    gemini 3 pro 超级稳
    clemente
        4
    clemente  
       4 天前
    先完善原有项目的单测/功能测试/集成测试/压力测试

    让 AI 一把锁
    然后按照测试完成率来做判断
    liyafe1997
        5
    liyafe1997  
       4 天前
    可以,并且我认为这正是 AI 擅长的,可以减少很多编码的体力活。
    但是要写好 prompt ,用 AI 也不是一件简单的事的。
    不是一句「帮我移植到 Linux 」就完事,你需要讲清楚技术方案,库/API 替换,以及一些特殊情况(比如 Windows 有而 Linux 没有的功能,以及一些你能想到的 AI 不能帮你做的决策,你要安排好),给好示例,甚至准备好很多文档,还要拆解好任务。
    masterclock
        6
    masterclock  
       4 天前
    其实我见过用 wine 的服务程序
    jamesjammy061
        7
    jamesjammy061  
       4 天前
    几乎是 0 ,改成一坨
    sagnitude
        8
    sagnitude  
       4 天前
    要么直接 wine 跑,也不用移植了
    要么直接重写,UI 用 ai 做前端一把梭,再花个把月梳理所有设计要求和模块文档,再找几个熟悉这个工具的人摸个几个月,高强度和 ai 对线,再测试个几个月,还有点可能
    svyrblg
        9
    svyrblg  
       3 天前
    Mac 往 Linux 移植比 Windows 移植过来简单一些吧
    kero991
        10
    kero991  
       3 天前 via Android
    我觉得就算移植过去了,也是屎山代码,而且项目不具备任何维护能力了(你怎么更新这 3 个已经完全不一样的代码?)

    github 上多的是这种一代项目勉强移植,然后从头开始用跨平台重构的,只要你这个项目不是停止维护了,你迟早要走这一步。
    kero991
        11
    kero991  
       3 天前 via Android
    @passive 我问 ai 啥是 libwine 他给了我另一个建议
    如果你想源码级移植,那得用 Winelib ( Wine 的另一个工具),它允许你把 Windows 源码重新编译成 Linux 原生程序,链接的就是 libwine 的开发版本。
    wnpllrzodiac
        12
    wnpllrzodiac  
    OP
       3 天前 via Android
    @svyrblg mac 移植用了大量 foundation coca 框架 mm 文件,而不是 posix 实现。所以基本除了 sh 脚本可以参考。移植部分基本没用。osx 移植的人是做 osx 开发的
    wnpllrzodiac
        13
    wnpllrzodiac  
    OP
       3 天前 via Android
    @kero991 wine 运行 windows 版的问题是,一旦遇到 crash 问题。没办法调试。wine 不支持运行 debug 版的 vsruntime 除非 wine 里装 vs2022. 调试也是困难。用了很多 dll 和黑科技
    whenov
        14
    whenov  
       3 天前
    性能要求不高的话,要不把整个 Windows+虚拟机打包吧[doge]
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2588 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 11:42 · PVG 19:42 · LAX 03:42 · JFK 06:42
    ♥ Do have faith in what you're doing.