Skip to content

Yade on Ubuntu 22.04

I tried the following manipulation on ubuntu22 through virtualBox, for each precision flavor: 1- start yade 2- yade.qt.Controller() # in default ubuntu, F10 is captured by the terminal already 3- generate Triaxial preprocessor and run it while watching the 3D view

I found three levels of error/warning which appear heterogeneously, depending on numbers precision.

A. In all cases there is a message which, I suppose, is only a consequence of using VBox:

Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway

B. All higher precision versions output the same runtime warning followed by a TypeError at startup, also ubuntu pops up a window saying "yade crashed", but opening qt and running a simulation is still possible. The messages are below.

/usr/lib/x86_64-linux-gnu/yade-mpfr150/py/yade/__init__.py:76: RuntimeWarning: to-Python converter for boost::shared_ptr<yade::MatchMaker> already registered; second conversion method ignored.
boot.initialize(plugins,config.confDir)\
TypeError: No to_python (by-value) converter found for C++ type: boost::multiprecision::number<boost::multiprecision::backends::mpfr_float_backend<150u, (boost::multiprecision::mpfr_allocation_type)1>, (boost::multiprecision::expression_template_option)0>

C. In one single case (yade-float128) there is a fatal error and yade crashes at qt.Controller(). It seems to be a number-display problem. Significant bits below, full log attached.

ValueError Traceback (most recent call last)
/usr/lib/x86_64-linux-gnu/yade-float128/py/yade/__init__.py in generatorComboSlot(self, genStr)
111 gen=eval(str(genStr)+'()')
112 self.generator=gen
--> 113 se=SerializableEditor(gen,parent=self.generatorArea,showType=True)
114 self.generatorArea.setWidget(se)
115 def pythonComboSlot(self,cmd):
/usr/lib/x86_64-linux-gnu/yade-float128/py/yade/__init__.py in __init__(self, ser, parent, ignoredAttrs, showType, path)
462 logging.debug('New Serializable of type %s'%ser.__class__.__name__)
463 self.setWindowTitle(str(ser))
Edited by bchareyre