Arnold Render installing error

Tags: #<Tag:0x00007fe45e0a1bb8> #<Tag:0x00007fe45e0a1aa0>

hi
i cant install MtoA (Arnold Render for Autodesk Maya) , here is the error output:
$sudo ./MtoA-2.1.0.2-linux-2017.run
"Verifying archive integrity… All good.
Uncompressing MtoA for Linux Installer…
File “./unix_installer.py”, line 348
print pitreg_result
^
SyntaxError: Missing parentheses in call to ‘print’ "

i google it and find a trick command (alias python=python2) but it does not work for me, links below describe:


i have python 2.7 and 3.4 installed. also i’ve tested it on other distros before commenting here , i works on debian,mageia,ubuntu,fedora and opensuse.
its so close to fully migrate from fedora :wink:
tnx to any answer.

Sorry not been of any help, but is this like blender, is it better?

No not in fact, Blender is a complete 3d animation software like 3dsMax, Maya, Cinema4D and etc but Arnold Render is just a render engine and blender has its own embedded render engine called Cycles.
anyway tnx

@hsafaei Looks like this software uses python2, while OpenMandriva uses python3 as a default python interpreter.

Anyways that software is a bit poorly designed as it should detects python’s interpreter version.

Here are quirks that may help you:

  1. export PYTHON=/usr/bin/python2
  2. run that “run” file

If above won’t help:

  1. extract files from that “fun” file
  2. grep for “python” and replace it with python2 in some script files

you may look for files header:
#!/usr/bin/python
and replace it with #!/usr/bin/python2

i did it as you described. there is a ,py installer script.
i tried to run it by python 2and once python3. so here is their results:
[ho3in@OML3 New Folder]$ sudo python2.7 ./unix_installer.py $*
Traceback (most recent call last):
File “./unix_installer.py”, line 21, in
if platform.system().lower() != sys.argv[2]:
IndexError: list index out of range
[ho3in@OML3 New Folder]$ sudo python3 ./unix_installer.py $*
File “./unix_installer.py”, line 349
print pitreg_result
^
SyntaxError: Missing parentheses in call to ‘print’

this is ectracted py file:
unix_installer.py.txt (11.2 KB)

looks like this script needs some argumets to be passed on start.
That’s why these .run files are quite pain.

You need to check it deeply

That’s a python2/3 syntax error it probably means that this part of the script is being run by python3. There are ways to run python in a custom enviroment which may be easier for you to sort out.
You might like to have a look here
http://www.pythonforbeginners.com/basics/how-to-use-python-virtualenv

1 Like