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

在M1芯片Mac上编译oracle_fdw的可行解决方案

在M1 Mac上编译oracle_fdw的可行方案

方案一:用Rosetta 2模拟x86_64环境编译

  1. 先安装Rosetta 2,终端执行:
    softwareupdate --install-rosetta
    
  2. 打开x86版本的终端:右键终端图标→「获取信息」→勾选「使用Rosetta打开」
  3. 在这个终端里安装x86架构的Homebrew,然后下载Intel版本的Oracle Instant Client,解压后配置环境变量:
    export ORACLE_HOME=/你的instantclient解压路径
    export DYLD_LIBRARY_PATH=$ORACLE_HOME
    
  4. 按常规步骤编译安装oracle_fdw:
    git clone https://github.com/laurenz/oracle_fdw.git
    cd oracle_fdw
    make USE_PGXS=1
    make USE_PGXS=1 install
    
    依赖Rosetta的转译能力,这套流程能绕开ARM版本缺失的限制。

方案二:用Docker容器运行

直接用x86_64架构的PostgreSQL镜像,M1上的Docker会自动通过Rosetta转译运行。可以:

  • 拉取官方PostgreSQL镜像,进入容器后手动安装Oracle Instant Client并编译oracle_fdw;
  • 找现成的已打包好oracle_fdw的PostgreSQL镜像启动使用。
    这种方式不用在本地主机处理架构兼容问题,所有操作都在容器内完成。

方案三:远程使用已部署好的oracle_fdw

如果只是需要用oracle_fdw的功能,没必要非要在本地编译。找一台x86架构的服务器,部署PostgreSQL并编译安装好oracle_fdw,然后在你的M1 Mac上远程连接这台服务器使用该扩展即可,完全避开本地架构限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 23:53:17