Closed utenma closed 1 year ago
build does run with yarn version 1 however the toolchain does not support m1
bolt-cep/node_modules/jsxbin/esdebugger-core/mac/esdcorelibinterface.node' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/local/lib/esdcorelibinterface.node' (no such file), '/usr/lib/esdcorelibinterface.node' (no such file)
Hi @saulpalv. Yes the project is set up for Yarn 1, so I would recommend that. I don't have an M1 Mac to test with, but it looks like the error is due to the JSXBIN feature not having a library for M1. Here's what I'd try:
yarn
and then yarn build
with Yarn 1cep.config.ts
to: build: { jsxBin: "off", sourceMap: true, },
Until Adobe releases the ExtendScript debugger 2.0 to the public, (right now it's in NDA beta), JSXBIN won't work on M1 Macs. You can either build in Rosetta mode, or make your own local fork of jsxbin
and try to update with the latest esdebugger libraries after joining the beta group, outlined here:
thanks for investigating further, is there a command to run npm install
as arch=x64?
yarn install
will install for your platform, no need to specify, however, this won't solve the JSXBIN issue as the package doesn't contain the right binaries for M1 Macs anyway.
@justintaylor-dev So as a novice developer, what should I do now? After reading the comments section, my understanding is to replace JSXBIN or esdebugger-core 's bag? I'm sorry that my English is not very good, so I can only write it well in Chinese and communicate with you in English.
@imHowie you have a few options:
Rosseta does not work by default because npm tries to install arm64 binaries because node -p process.arch
= arm64
which are not available, hopefully there would be a way to instruct npm to install x64 binaries that could work with Rosseta.
Just wanted to document my steps for getting this working with Rosetta, for folks who are interested.
Caveats
Steps
Duplicate
), rename the duplicated version to iTerm - Rosetta
, and configure to use RosettaiTerm - Rosetta
(again, make sure to quit iTerm before double clicking if iTerm was running)arch
and make sure it returns i386
nvm install v19.0.0
(or some other version of Node, I went with v19.0.0
but you can go with whatever works!). This is a critical step, you need a version of Node that was installed on the right architecture, which is what this step is doingnvm use v19.0.0
(or again, whatever version of Node you chose)node -e 'console.log(process.arch)'
and confirm you see x64
npm install -g yarn
yarn install
on in the directory of your Bolt CEP project, make sure to delete yarn.lock
and node_modules
yarn
yarn build
Another option is to use node 14.16.1
, which is the last version that didn't support arm64 for mac, so installs x86_64 to run with rosetta you add it to a
.nvmrc
14.16.1
switch with nvm use
Adobe hasn't released binaries for Apple Silicon machines yet. If and when they do, we can revisit this.
Hello i tried to run the cep extension, however i get: Which version of yarn should be used? Currently on Yarn 3.2.0, Mac M1
steps to reproduce
yarn
yarn build
i will try with yarn 1...