If you get API errors and Error: Failed to open python module 'arnold' and a crash/segmentation fault when you try to load the MtoA plugin in mayapy, it's probably because mayapy cannot find the MtoA and Arnold Python modules.

If you compare sys.path in mayapy with the sys.path in Maya, you'll see that in mayapy, the MtoA scripts folder is missing. For example, here's the mayapy output on my Windows machine:

If I run the same Python in Maya (before I load MtoA), I see a lot more paths, including the MtoA scripts folder, in sys.path:

 Expand source

 

To add the MtoA script folder to the sys.path so you can load MtoA, you can either set PYTHONPATH before you start mayapy, or append the MtoA scripts folder to sys.path in your script, like this:

 

For reference, here's the full error output from mayapy (on Windows) when the MtoA scripts folder is missing from sys.path:

 Expand source
    Link to this page