View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0027548||2.x IDE Bugs||[All Projects] General||Public||2017-08-24 22:23||2021-07-16 14:05|
|Priority||High||Severity||B - Major||Reproducibility||100%|
|Target Version||Fixed in Version|
|Summary||0027548: Build Mac: App unable to be signed with third party Mac certificate [as no certificate is being found]|
|Description||Using GM Studio 2 PC, I am able to run the game fine remotely or compiling it without a Signing Identifier. I've also downloaded all certificates, etc. using the GM step by step tutorial. However, once I fill in the signing identifier with "David Galindo" I get the following error after the game finishes compiling and creating the game on Mac:|
security unlock-keychain -p password && security find-certificate -c 'David Galindo'
security unlock-keychain -p password; codesign -f -s David\ Galindo --no-strict --deep /Users/chubigans3/GameMaker-Studio/CSD2_PS4Steam/CSD2.app
System.Exception: Error codesigning .app (1):
at ..(String , String , String )
at ..(String , String , String , Dictionary`2 , String )
at Igor.MacBuilder.Package()Igor complete.
elapsed time 00:03:25.8745979s for command "C:\ProgramData/GameMakerStudio2/Cache/runtimes\runtime-188.8.131.52/bin/Igor.exe" -options="D:\GMTempAssets\TempFiles\GMS2TEMP\build.bff" -- Mac Package started at 08/24/2017 16:09:21
FAILED : Package Program Complete
This is similar to an error I got when my Asset/Temp directory had a space in the name ("GM Temp Files"), however I don't know how to fix this issue since the Signing Identifier can't be renamed.
I've also tried multiple things with the certificate itself (deleting old certificates, making it accessible to all, allowing access to the key, etc.). But it seems like a spacing issue?
|Tags||Build, IDE, igor, mac|
|2.x IDE Found In|
|2.x Runtime Found In||184.108.40.206|
|2.x IDE Verified In|
|2.x Runtime Verified In|
|I should add by "third party Mac certificate" I mean the Developer ID certificate needed for the game to be signed, not an actual 3rd party certificate.|
I suspect this is because you're on the newer Xcode build tools, which want you to use the hash for your certificate rather than perform a name lookup.
See https://forums.developer.apple.com/thread/65055 and specifically the comment:
"I got both issues with a fresh new certificate, so it was not just about the certificate being old.
But I got around it by specifying the certificate by ID instead of name — first getting the ID via:
security find-identity -p codesigning
and, from the output of that, copying the long hex ID for the key I want, and pasting that into my codesign invocation:
sudo codesign -s 001CA54450805B2D8D1646793D0339BA7EB931D1 --timestamp=none /opt/local/bin/ggdb "
You would take the hash and put it into game options instead of the name you have supplied just now.
Let me know if that sorts it for you.
I suspect that you are looking to put the HASH code for the codesigning certificate rather than the name - to find that then open the KeyChain Access application and then right click on the certificate you want to choose and select Get Info then scroll to the bottom and use the SHA1 hash code (you need to remove the spaces from between the bytes) as the name.
That should work.. let us know how you get on.
DOH: Dan beat me to it... either way should work.
Ok, I've tried to use the hash by copying and pasting it while removing the spaces, and it throws this error:
System.Exception: Error : Could not find matching certificate for DCD03A01DC144F3E8C35999A54104B3655D204F9, please check your 'Signing Identifier' in your macOS Options
||Ah Hang on are you using 1.x or 2???|
|I'm using 2, the latest hotfix build released today (IDE v. 220.127.116.11 and Runtime v. 18.104.22.168)|
Last edited: 2017-08-30 05:45
Another strange bug: I've deleted the key so I can export it to Mac. However, every time I start up GM and load my game, in the Signing Identifier box I get text that says "Developer ID Application:" and I have to delete it every time I want to export to Mac.
||Has been fixed or made invalid by changes in recent versions of GMS2. Closing.|