• 安装umi4阻碍一天的问题解决了


    umi4已经发布一段时间了,现在项目中还是用的umi3版本,umi3最坑的就是mfsu不会热更新,而且umi4新增了一些功能,所以打算把umi版本升级下。

    问题

    通过 npm create umi,选择pnpm安装。
    报错:dyld: Symbol not found: _SecTrustEvaluateWithError

    环境:
    mac os: 10.12.6
    node.js: v16.14.2

    pnpm报错:

    Packages are hard linked from the content-addressable store to the virtual store.
      Content-addressable store is at: /Users/keven/Library/pnpm/store/v3
      Virtual store is at:             node_modules/.pnpm
    Progress: resolved 1192, reused 1063, downloaded 0, added 1112, done
    node_modules/.pnpm/esbuild@0.14.36/node_modules/esbuild: Running postinstall script, failed in 568ms
    .../esbuild@0.14.36/node_modules/esbuild postinstall$ node install.js
    │ node:child_process:828
    │     err = new Error(msg);
    │           ^
    │ Error: Command failed: /Users/keven/Documents/personal/code/umi/antd/node_modules/.pnpm/esbuild@0.14.36/node_m
    │ dyld: Symbol not found: _SecTrustEvaluateWithError
    │   Referenced from: /Users/keven/Documents/personal/code/umi/antd/node_modules/.pnpm/esbuild@0.14.36/node_modul
    │   Expected in: flat namespace
    │     at checkExecSyncError (node:child_process:828:11)
    │     at Object.execFileSync (node:child_process:866:15)
    │     at validateBinaryVersion (/Users/keven/Documents/personal/code/umi/antd/node_modules/.pnpm/esbuild@0.14.36
    │     at /Users/keven/Documents/personal/code/umi/antd/node_modules/.pnpm/esbuild@0.14.36/node_modules/esbuild/i
    │   status: null,
    │   signal: 'SIGABRT',
    │   output: [
    │     null,
    │     Buffer(0) [Uint8Array] [],
    │     Buffer(215) [Uint8Array] [
    │       100, 121, 108, 100,  58,  32,  83, 121, 109,  98, 111, 108,
    │        32, 110, 111, 116,  32, 102, 111, 117, 110, 100,  58,  32,
    │        95,  83, 101,  99,  84, 114, 117, 115, 116,  69, 118,  97,
    │       108, 117,  97, 116, 101,  87, 105, 116, 104,  69, 114, 114,
    │       111, 114,  10,  32,  32,  82, 101, 102, 101, 114, 101, 110,
    │        99, 101, 100,  32, 102, 114, 111, 109,  58,  32,  47,  85,
    │       115, 101, 114, 115,  47, 107, 101, 118, 101, 110,  47,  68,
    │       111,  99, 117, 109, 101, 110, 116, 115,  47, 112, 101, 114,
    │       115, 111, 110,  97,
    │       ... 115 more items
    │     ]
    │   ],
    │   pid: 15457,
    │   stdout: Buffer(0) [Uint8Array] [],
    │   stderr: Buffer(215) [Uint8Array] [
    │     100, 121, 108, 100,  58,  32,  83, 121, 109,  98, 111, 108,
    │      32, 110, 111, 116,  32, 102, 111, 117, 110, 100,  58,  32,
    │      95,  83, 101,  99,  84, 114, 117, 115, 116,  69, 118,  97,
    │     108, 117,  97, 116, 101,  87, 105, 116, 104,  69, 114, 114,
    │     111, 114,  10,  32,  32,  82, 101, 102, 101, 114, 101, 110,
    │      99, 101, 100,  32, 102, 114, 111, 109,  58,  32,  47,  85,
    │     115, 101, 114, 115,  47, 107, 101, 118, 101, 110,  47,  68,
    │     111,  99, 117, 109, 101, 110, 116, 115,  47, 112, 101, 114,
    │     115, 111, 110,  97,
    │     ... 115 more items
    │   ]
    │ }
    └─ Failed in 569ms
     ELIFECYCLE  Command failed with exit code 1.
    

    换yarn试试,同样报错

    error /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild: Command failed.
    Exit code: 1
    Command: node install.js
    Arguments: 
    Directory: /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild
    Output:
    node:child_process:828
        err = new Error(msg);
              ^
    
    Error: Command failed: node /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild/bin/esbuild --version
    dyld: Symbol not found: _SecTrustEvaluateWithError
      Referenced from: /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild-darwin-64/bin/esbuild
      Expected in: flat namespace
    
    node:child_process:869
        throw err;
        ^
    
    Error: Command failed: /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild-darwin-64/bin/esbuild --version
        at checkExecSyncError (node:child_process:828:11)
        at Object.execFileSync (node:child_process:866:15)
        at Object.<anonymous> (/Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild/bin/esbuild:172:28)
        at Module._compile (node:internal/modules/cjs/loader:1103:14)
        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
        at Module.load (node:internal/modules/cjs/loader:981:32)
        at Function.Module._load (node:internal/modules/cjs/loader:822:12)
        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
        at node:internal/main/run_main_module:17:47 {
      status: null,
      signal: 'SIGABRT',
      output: [ null, null, null ],
      pid: 15677,
      stdout: null,
      stderr: null
    }
    
        at checkExecSyncError (node:child_process:828:11)
        at Object.execFileSync (node:child_process:866:15)
        at validateBinaryVersion (/Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild/install.js:101:32)
        at /Users/keven/Documents/personal/code/umi/antd/node_modules/esbuild/install.js:249:5 {
      status: 1,
      signal: null,
      output: [
        null,
        Buffer(0) [Uint8Array] [],
        Buffer(1114) [Uint8Array] [
          100, 121, 108, 100,  58,  32,  83, 121, 109,  98, 111, 108,
           32, 110, 111, 116,  32, 102, 111, 117, 110, 100,  58,  32,
           95,  83, 101,  99,  84, 114, 117, 115, 116,  69, 118,  97,
          108, 117,  97, 116, 101,  87, 105, 116, 104,  69, 114, 114,
          111, 114,  10,  32,  32,  82, 101, 102, 101, 114, 101, 110,
           99, 101, 100,  32, 102, 114, 111, 109,  58,  32,  47,  85,
          115, 101, 114, 115,  47, 107, 101, 118, 101, 110,  47,  68,
          111,  99, 117, 109, 101, 110, 116, 115,  47, 112, 101, 114,
          115, 111, 110,  97,
          ... 1014 more items
        ]
      ],
      pid: 15676,
      stdout: Buffer(0) [Uint8Array] [],
      stderr: Buffer(1114) [Uint8Array] [
        100, 121, 108, 100,  58,  32,  83, 121, 109,  98, 111, 108,
         32, 110, 111, 116,  32, 102, 111, 117, 110, 100,  58,  32,
         95,  83, 101,  99,  84, 114, 117, 115, 116,  69, 118,  97,
        108, 117,  97, 116, 101,  87, 105, 116, 104,  69, 114, 114,
        111, 114,  10,  32,  32,  82, 101, 102, 101, 114, 101, 110,
         99, 101, 100,  32, 102, 114, 111, 109,  58,  32,  47,  85,
        115, 101, 114, 115,  47, 107, 101, 118, 101, 110,  47,  68,
        111,  99, 117, 109, 101, 110, 116, 115,  47, 112, 101, 114,
        115, 111, 110,  97,
    

    解决办法

    官方也有人提同样的问题,但是没有解决办法,https://github.com/evanw/esbuild/issues/2183

    有的文章说是go版本的问题,和go没关系,主要是因为esbuild版本问题。

    最终解决办法,在package.json加上下面的配置,主要是通过npm override来改变esbuild版本信息

    "devDependencies": {
      "esbuild-wasm":"latest"
    },
    "overrides": {
      "esbuild":"npm:esbuild-wasm@latest"
    }
    

    执行npm install就安装好了

  • 相关阅读:
    算法面试题
    学习进度条(一)
    代码作业——四则运算
    构建之法阅读笔记01
    本学期的阅读计划与快速阅读《构建之法》后提出问题
    自我介绍及学期目标
    对天天开心消消乐(订餐系统)的建议
    《构建之法》阅读笔记01-快速阅读后的几个问题。
    二柱子之随机四则运算
    自我介绍
  • 原文地址:https://www.cnblogs.com/xiyangbaixue/p/16521557.html
Copyright © 2020-2023  润新知