Versiossa 18.04 Freecad 0.18.1 käyttää python3 versiota. Aluksi ei edes Elmer ratkaisijan lisäys piirrepuuhun onnistunut. Virheilmoituksen perusteella löysin ratkaisun netistä. Piti lisätä yksi paketti.
sudo apt install python3-distutils
Sen jälkeen laskenta näytti menevän läpi. Virhe (alla) syntyi kun Elmerin piti palauttaa tulos jälkikäsittelyä varten Freecadiin.
Exception in thread Thread-8:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/usr/lib/python3.6/threading.py", line 864, in run
self._target(*self._args, **self._kwargs)
File "/usr/share/freecad/Mod/Fem/femsolver/task.py", line 115, in protector
self.run()
File "/usr/share/freecad/Mod/Fem/femsolver/elmer/tasks.py", line 107, in run
self._updateOutput(output)
File "/usr/share/freecad/Mod/Fem/femsolver/elmer/tasks.py", line 115, in _updateOutput
self.solver.ElmerOutput.Text = output.decode("utf-8")
AttributeError: 'str' object has no attribute 'decode'
Kun siirrän dokumentin ympäristöön (16.04) missä on käytössä myös Freecad 0.18.1 mutta python2, niin uudelleenlaskenta toimii ja palauttaa tuloksen oikein.
Onko tuossa kysymys siitä, että python3 ei ole taaksepäin täysin yhteensopiva, vai puuttuko minulta jokin paketti tai ympäristömuuttuja?