Sim client install help - Mac OS

Updated: 7/7/2017

Our simulator client runs on .net core, which we bundle with the Mac OS X download so you don’t need to worry about it. But, you will probably need to install some external prerequisites that are not installed on most Mac users’ computers by default.

##Install Prerequisites
The official instructions can be found on the .net core website:
https://www.microsoft.com/net/core#macos
You only need to do Step 1, the prerequisites.

To summarize those official instructions:

  1. If you do not have homebrew installed (and if you don’t know what that is, you probably don’t have it), install that first:

  2. open up a terminal window

  3. paste the following into the prompt then press enter:
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  4. Update OpenSSL:

  5. open up a terminal window

  6. do these commands:

brew update
brew install openssl
mkdir -p /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/
  1. If you get a warning try the same commands but replace
    brew install openssl
    with
    brew install --force openssl

##Run the Client
Mac OS X by default will not run an application that is not signed by an Apple “identified developer”. In order to run an unsigned application, do the following:

  1. Right-click the amr app and click “Open” in the context menu.
  2. A dialog appears asking for your permission to open the unsigned app – allow it.
  3. You only need to do this once: you can just double-click the amr app in the future to run it.

A note about unsigned apps: it’s fine to run an unsigned app as long as you trust the source that you got it from! In our case, make sure that you downloaded the client directly from our secure download page, Not Available, and not from any 3rd party.

Thanks to @cleptor for some extra details!

1 Like

Hi,

This has not worked for me, I would get this error message before and after following these steps

Last login: Fri Mar 17 21:35:45 on ttys000
An unexpected error has occurred: The type initializer for ‘System.Net.Http.CurlHandler’ threw an exception.

Please go to the Contact page at askmrrobot.com and submit a technical support request if this error persists.

Press any key to exit…

Any help would be appreciated.

From everything that I have read, that error means that OpenSSL didn’t get installed correctly…

If you run
$ openssl version
what does it print out?

Hi Yellowfive,

Thanks for responding, see the print out below

Last login: Sat Mar 18 18:14:03 on ttys000
iMac:~ Chris$ openssl version
OpenSSL 0.9.8zh 14 Jan 2016
iMac:~ Chris$

Yeah, OpenSSL didn’t update for some reason… could you try running the commands in that linked .NET article again?

brew install openssl
mkdir -p /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/```

Ok I have tried this and I could only get brew to update…

Warning: openssl is a keg-only and another version is linked to opt.
Use brew install --force if you want to install this version

I tried ‘brew install --force’ but i get

Error: Invalid usage: This command requires a formula argument

I have to admit, i’m a little out of my depth with terminal!

I’m not a mac user either unfortunately… but try this:

brew install --force openssl

I think you need to do brew install openssl --force

It needs to know what package to force install.

Brilliant,

This now works, thanks guys! Now to learn how to use the client!

Thanks again

Kudos to Zoopercat for the helpful post. I’d like to add some information to that.

There is no need to use “better” unzip tool because macOS does that just fine. Should you be looking a tool to pack and unpack multiple archive formats then have a look at Keka which is way better than Unarchiver. http://www.kekaosx.com

To find out your OpenSSL version, open Terminal and enter the command
openssl version

If you have OpenSSL 0.9.8zh 14 Jan 2016 then you need an update.

Standard macOS installations don’t come with Homebrew and if you probably won’t have it, but you can install it with a single command in Terminal:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Further information about Homebrew is available at their website https://brew.sh

After that use the commands yellowfive wrote in his reply.
brew update
brew install openssl
mkdir -p /usr/local/lib
ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

If you get a warning try the same commands but replace
brew install openssl
with
brew install --force openssl
Kudos to yellowfive for correctly pointing this out.

You should always have your security settings set to allow only apps signed by an Apple “identified developer” to be run. The first time you run the Ask Mr. Robot app (or any other unsigned app) simply right-click it and then click “Open” in the context menu. This will give you a dialog informing you that’s it’s an unsigned app and asking your permission to allow macOS to open the app. You only need to do this the first time you start the app. macOS will remember this and subsequently you can start the app by double-clicking it. No drag&drop necessary. Do NOT change your security settings to allow apps not signed by an Apple “identified developer” to be run. This is really serious and can not be over-emphasized. Keep your system secure and never let anybody talk you into lowering your security settings.

Edit: Typo fixed. Paragraph about security settings added.

Yeah I can probably take that out about the unzip tool… the first version required it, the newer versions do not anymore.

The default Mac unzip tool cannot handle windows file path separators (backslash). So I had to adjust that… the packaging tool I used was inserting the default path separator for the machine it was on. Had to force it to use the *nix style paths.

The default Windows unzip tool can handle either format without problems, which is what threw me off.

Hello,

I have exactly the same problem:

"Last login: Sat Jul 15 12:33:10 on ttys001
An unexpected error has occurred: The type initializer for ‘System.Net.Http.CurlHandler’ threw an exception.

Please go to the Contact page at askmrrobot.com and submit a technical support request if this error persists.
"

Even I follow all the instructions above, I have always the same problem and my openSSL still with the same version.

Someone cane help ?

I received an email from someone who followed the instructions here, and has the problem below. Anyone have ideas?

I followed the instructions for the macOS client. However, when I launch Amr in terminal, I get the following error: Ask Mr. Robot client checking for latest version… Segmentation fault: 11 logout Saving session… …copying shared history… …saving history…truncating history files… …completed. Or the following error as well: Ask Mr. Robot client checking for latest version… Bus error: 10 logout Saving session… …copying shared history… …saving history…truncating history files… …completed. How can solve this issue?

I have exactly those two error messages as well. It worked fine until I updated from macOS Sierra 10.12 to 10.13, a beta version of the operating system that has quite a few major improvements and so I am not surprised things don’t work, the Twitch desktop application for example just won’t open, not even an error message. Previously it worked fine.

A little searching brings up that this is a known issue with 1.X versions of .net core on the “high sierra” mac version.

It looks like there may be a fix in a newer version of the 1.X .net core CLR… but we will probably not upgrade to that – it causes some breaking issues due to another bug in the 1.X CLR.

This issue will be resolved in .net core 2.0, which we plan to upgrade to once it has a production-ready release (sometime this fall I believe).

We may put out a release that does not bundle the .net core CLR, and instead requires you to install your own. That might work for people, so keep an eye out for that.

Yea that might work. I installed version 2 Preview 2 but don’t know how to “link” or convince AMR to use it.

Not 100% sure if this will work to link to your version of .net core instead of the one we bundle, but try instead of running the amr app, run this:

dotnet amr.dll

I think that should use your version of .net core to run our program.

Didn’t seem to work. Dotnet just crashed.
Of course I had to enter the full path: dotnet /Applications/AskMrRobotClient/amr.dll

Or do I need to copy some files to the AskMrRobotClient folder?

Yeah I figured that was a long shot… what error does it give when it crashes? And did you run that dotnet command from within the AskMrRobotClient folder? Would think the path isn’t necessary if you do that…

Same errors but with a crash window of DotNet.

Ask Mr. Robot client checking for latest version…
Segmentation fault: 11
Melwan-MBP:~ melwan$
Melwan-MBP:~ melwan$ dotnet /Applications/AskMrRobotClient/amr.dll

Ask Mr. Robot client checking for latest version…
Bus error: 10
Melwan-MBP:~ melwan$