Giter VIP home page Giter VIP logo

Comments (12)

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024 1

Update: This is in fact an issue with the jsxbin package, see details here:

Issue 29

I'll bump that issue.

from bolt-cep.

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024 1

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.

from bolt-cep.

cojennin avatar cojennin commented on May 27, 2024 1

Just wanted to document my steps for getting this working with Rosetta, for folks who are interested.

Caveats

  • I use iTerm
  • I use nvm to manage my Node versions

Steps

  1. If iTerm is running, quit it, then go to your Applications directory (assuming that's where iTerm resides) and duplicate iTerm (right click the iTerm app, select Duplicate), rename the duplicated version to iTerm - Rosetta, and configure to use Rosetta
  2. Double click iTerm - Rosetta (again, make sure to quit iTerm before double clicking if iTerm was running)
  3. Run arch and make sure it returns i386
  4. If you don't already have it, install nvm
  5. Run 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 doing
  6. Then nvm use v19.0.0 (or again, whatever version of Node you chose)
  7. Run node -e 'console.log(process.arch)' and confirm you see x64
  8. You'll probably need to install yarn again, so run npm install -g yarn
  9. Then, if you've already run yarn install on in the directory of your Bolt CEP project, make sure to delete yarn.lock and node_modules
  10. Run yarn
  11. Run yarn build

from bolt-cep.

utenma avatar utenma commented on May 27, 2024

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)

from bolt-cep.

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024

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:

  1. Re install by running yarn and then yarn build with Yarn 1
  2. If you're getting the same error, you can just disable the JSXBIN export for now by editing the cep.config.ts to:

build: { jsxBin: "off", sourceMap: true, },

from bolt-cep.

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024

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:

ExtendScript Debugger 2.0

from bolt-cep.

utenma avatar utenma commented on May 27, 2024

thanks for investigating further, is there a command to run npm install as arch=x64?

from bolt-cep.

imHowie avatar imHowie commented on May 27, 2024

@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.

from bolt-cep.

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024

@imHowie you have a few options:

  1. Build on a non-M1 Mac
  2. Build on an M1 Mac in Rosetta mode
  3. Make a PR for the jsxbin repo that includes the M1 binaries from the VS Code ExtendScript Debugger beta

from bolt-cep.

utenma avatar utenma commented on May 27, 2024

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.

from bolt-cep.

utenma avatar utenma commented on May 27, 2024

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

from bolt-cep.

justintaylor-dev avatar justintaylor-dev commented on May 27, 2024

Adobe hasn't released binaries for Apple Silicon machines yet. If and when they do, we can revisit this.

from bolt-cep.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.