V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
PepperEgg
V2EX  ›  macOS

M1/x86_64 不同平台的 macOS 软件兼容性问题

  •  
  •   PepperEgg · May 30, 2022 · 2314 views
    This topic created in 1432 days ago, the information mentioned may be changed or developed.
    编译的 chromium 项目,之前一直没拿其他电脑测试。今天一测,炸了。。。
    x86_64(以下统称 x86)的 mac 打不开 T.T
    我的 mac 是 M1 的,版本 12 。编译好之后,给公司不同的电脑测试,只要是个 x86 的不管是 10 11 12 都跑不了,是个 m1 的不管是 11 还是 12 都能跑。请问这种兼容性问题从何入手?
    另外我用我的电脑 xcode 新建了一个空工程,编译好之后直接放到 x86mac 跑竟然能跑起来。。。
    所以说这是 chromium 工程配置 or 选项我漏了啥,还是说这就是 mac M1/x86 需要特殊处理的地方?
    感觉这跟 windows 上差别好大,求大佬解惑!
    Supplement 1  ·  May 31, 2022
    6 replies    2022-05-31 08:53:08 +08:00
    32uKHwVJ179qCmPj
        1
    32uKHwVJ179qCmPj  
       May 30, 2022
    默认可能只编译 arm 架构,xcode 新工程编译出来的会同时包括 arm 和 x86 架构
    PepperEgg
        2
    PepperEgg  
    OP
       May 30, 2022
    @7v9TEc53 请问有可配置的地方吗
    hackpro
        3
    hackpro  
       May 30, 2022 via iPhone
    这就是我刚需黑苹果的原因
    F281M6Dh8DXpD1g2
        4
    F281M6Dh8DXpD1g2  
       May 30, 2022
    你编译的时候指定架构了么....
    Cryse
        5
    Cryse  
       May 30, 2022
    没编译过 chromium 但编译过 v8, 两边 (x86_64 和 Apple Silicon) 都可以交叉编译另一个架构,不过需要在参数里指定架构的.

    另外可以把不同架构的 binaries 合并成一个 universal binary (fat binary), Frameworks 也可以合并成 XCFramework.
    seansong
        6
    seansong  
       May 31, 2022
    chromium 每次不是只编译一个架构么,你编译成 aarch64 ,再编译一个 x86 架构的就好了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2503 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 06:05 · PVG 14:05 · LAX 23:05 · JFK 02:05
    ♥ Do have faith in what you're doing.