Comments (12)
Update: This is in fact an issue with the jsxbin package, see details here:
I'll bump that issue.
from bolt-cep.
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.
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
- 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 toiTerm - Rosetta
, and configure to use Rosetta - Double click
iTerm - Rosetta
(again, make sure to quit iTerm before double clicking if iTerm was running) - Run
arch
and make sure it returnsi386
- If you don't already have it, install nvm
- Run
nvm install v19.0.0
(or some other version of Node, I went withv19.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 - Then
nvm use v19.0.0
(or again, whatever version of Node you chose) - Run
node -e 'console.log(process.arch)'
and confirm you seex64
- You'll probably need to install yarn again, so run
npm install -g yarn
- Then, if you've already run
yarn install
on in the directory of your Bolt CEP project, make sure to deleteyarn.lock
andnode_modules
- Run
yarn
- Run
yarn build
from bolt-cep.
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.
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:
- Re install by running
yarn
and thenyarn build
with Yarn 1 - 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.
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:
from bolt-cep.
thanks for investigating further, is there a command to run npm install
as arch=x64?
from bolt-cep.
@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.
@imHowie you have a few options:
- Build on a non-M1 Mac
- Build on an M1 Mac in Rosetta mode
- Make a PR for the jsxbin repo that includes the M1 binaries from the VS Code ExtendScript Debugger beta
from bolt-cep.
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.
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.
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)
- Update .yml with Extension ID on Creation
- window.cep is always undefined in react template HOT 1
- Audition support HOT 5
- Add Support for Audition, Media Encoder, InDesign, and Bridge
- The <extension name> extension could not be loaded because it was not properly signed. HOT 1
- Cant't acess .jsx files
- removeEventListener obj parameter not set as optional
- How to get this working in NextJS? HOT 1
- zxp password included as raw text in build bundle HOT 2
- API requests HOT 1
- Package.json should inherit extension name
- Cannot build with 2 panels in cep.config.ts HOT 3
- Types for Adobe stop at v22.0 HOT 1
- "TypeError: undefined is not an object" when calling evalEs HOT 3
- [Question] Using HMR within Adobe apps? HOT 1
- Catching exceptions in evalTS HOT 1
- How to properly read assets copied by CEP_Config.copyAssets option? HOT 1
- Static Assets Handling HOT 1
- Compiling zxp failed HOT 3
- Support pkg and exe export HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bolt-cep.