Adobe-CEP / CEP-Resources

Tools and documentation for building Creative Cloud app extensions with CEP
https://www.adobe.io/apis/creativecloud/cep.html
1.63k stars 828 forks source link

ExManCmd library issues on Mac #66

Open zetisam opened 8 years ago

zetisam commented 8 years ago

I have created a HTML 5 extension for Photoshop and Premiere Pro. Our build pipeline spits out a signed .zxp file and this is how we used to deliver it to our customers.

Since the Extension Manager CC stopped being supported, I've bundled the mac/pc versions of the ExManCmd with my extension, together with a simple wrapper script to call the ExManCmd code and provide more verbose user-friendly feedback.

The folder structure is as follows:

The ExManCmd tool is the most recent one (page date 07/07/2015)

Theinstall.command contains the following call: ./bin/Contents/MacOS/ExManCmd --install ../assets/extensions.zxp

Generally the issues I'm encountering with installing the extensions this way, can be resolved by looking up the error-code, together with some trial and error.

But now a client of ours is getting different errors, somehow more related to the extension manager executable I guess:

MacPro2:MAC mac$ ./install.command

dyld: Library not loaded:   @executable_path/../Frameworks/adobe_caps.framework/Versions/A/adobe_caps

Referenced from: /Users/mac/Downloads/adobe_extension_16.3.1-installer/MAC/./bin/Contents/MacOS/ExManCmd

Reason: no suitable image found.  Did find:

/Users/mac/Downloads/adobe_extension_16.3.1-installer/MAC/./bin/Contents/MacOS/../Frameworks/adobe_caps.framework/Versions/A/adobe_caps: code signature invalid for '/Users/mac/Downloads/adobe_extension_16.3.1-installer/MAC/./bin/Contents/MacOS/../Frameworks/adobe_caps.framework/Versions/A/adobe_caps'

/Users/mac/Downloads/adobe_extension_16.3.1-installer/MAC/bin/Contents/MacOS/../Frameworks/adobe_caps.framework/Versions/A/adobe_caps: code signature invalid for '/Users/mac/Downloads/adobe_extension_16.3.1-installer/MAC/bin/Contents/MacOS/../Frameworks/adobe_caps.framework/Versions/A/adobe_caps'

Installation works successfully on Macs we own, and I'm unable to reproduce this behaviour on our systems.

Our client has tried reinstalling Photoshop and Premiere Pro. We also tried repairing disk permissions.

Do you have a clue as to what might be causing this problem? Any steps I can take to debug this further?

fgregor commented 8 years ago

Hi @zetisam

I've not been able to reproduce this, and it's not something I've heard about happening elsewhere.

On your client's machine, have you checked the following?

Are they perhaps able to try ExManCmd --list all with the build downloaded from here, and see if the same thing happens? https://www.adobeexchange.com/resources/28

zetisam commented 8 years ago

Hi Fraser,

Thanks for looking into this. I went to our client and did some troubleshooting. I found out that if I replace the ExManCmd with one freshly downloaded from the site, it seems to work.

It's still unclear why it works sometimes, and sometimes not.

Apparently there is something wrong in our build pipeline, upsetting the signatures. Do you know on what they are based? Is it just file contents/hashes or also last modified-datestamps?

Since the ZXP creation tool is only available on a windows computer (and not on Linux), probably there are some changes going on handling the Mac binaries there.

Thanks

vespakoen commented 4 years ago

This has to do with Symlinks being present in the newer ExManCmd builds, if you put ExManCmd on git, these links might break.

An easy fix is to store ExManCmd as a .zip in your git project, then extract it during the build phase.

Good luck!