You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac Mini M1上编译x86_64架构PHP intl.so适配XAMPP方法

解决Mac Mini M1上编译x86_64架构PHP intl.so适配XAMPP的问题

你的问题核心是M1芯片默认编译会生成arm64架构的库,但XAMPP为x86_64版本,因此需要强制指定编译架构为x86_64,具体操作步骤如下:

  • 步骤1:设置x86_64编译环境变量
    在终端执行以下命令,强制所有编译工具采用x86_64架构编译:

    export CFLAGS="-arch x86_64"
    export CXXFLAGS="-arch x86_64"
    export LDFLAGS="-arch x86_64"
    export CC="clang -arch x86_64"
    export CXX="clang++ -arch x86_64"
    
  • 步骤2:用XAMPP自带phpize初始化编译环境
    进入你下载的对应PHP版本源码的ext/intl目录(单独下载intl扩展则直接进入扩展目录),执行XAMPP自带的phpize(不要使用系统默认的phpize):

    /Applications/XAMPP/xamppfiles/bin/phpize
    
  • 步骤3:配置编译参数
    执行configure命令时,必须指定XAMPP的php-config路径,同时绑定XAMPP自带的ICU库目录(避免调用系统arm架构的ICU):

    ./configure --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config --enable-intl --with-icu-dir=/Applications/XAMPP/xamppfiles
    
  • 步骤4:编译并安装扩展
    先清理之前的编译残留,再执行编译和安装:

    make clean
    make
    make install
    
  • 步骤5:验证架构正确性
    使用lipo命令检查生成的intl.so架构:

    lipo -info /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20210902/intl.so
    

    若输出Architecture: x86_64,说明编译正确,此时重启XAMPP即可正常加载扩展。

额外注意事项

如果configure时提示找不到ICU库,可能是XAMPP未自带完整的ICU依赖,可通过homebrew安装x86_64版本的ICU:

arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
arch -x86_64 brew install icu4c

之后在configure命令中指定homebrew的ICU路径:

./configure --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config --enable-intl --with-icu-dir=/usr/local/opt/icu4c

内容的提问来源于stack exchange,提问作者Angel Aparicio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 08:28:26