Dear Joshua, thank you for your detailed answer. In fact, looking at the content of my DYLD_LIBRARY_PATH variable:
> echo $DYLD_LIBRARY_PATH /usr/local/qt/lib:/usr/local/psh/lib:/usr/local/dt/lib:/usr/local/netpbm/lib:/opt/lib and trying to remove each path separately, I found that the offended path preventing xmgrace to start was: /usr/local/dt/lib Removing that path from DYLD_LIBRARY_PATH xmgrace opens normally. So, problem solved. Thank you! Then, I looked for when that path is added to DYLD_LIBRARY_PATH in the interactive login session, and I figured out it happens in my ~/.profile configuration file, where there is the line: export DYLD_LIBRARY_PATH=${QTDIR}/lib:/usr/local/psh/lib:/usr/local/dt/lib:/usr/local/netpbm/lib:/opt/lib Really, I could not remember when or if I edit this file in order to add that path to the DYLD_LIBRARY_PATH. Maybe this was done in the installation procedure of some program. For what I could understand, /usr/local/dt contains an openmotif client: > ls /usr/local/dt/bin/ mwm uil xmbind > ls /usr/local/dt/lib X11 libMrm.4.dylib libMrm.dylib libUil.4.0.2.dylib libUil.a libUil.la<http://libUil.la> libXm.4.dylib libXm.dylib libMrm.4.0.2.dylib libMrm.a libMrm.la<http://libMrm.la> libUil.4.dylib libUil.dylib libXm.4.0.2.dylib libXm.a libXm.la<http://libXm.la> but it is not yet clear to me if this program is still relevant or employed by some other software or if I can remove it. Thank you again for your valuable help. All the best, Emy On 15. Nov 2019, at 20:37, Joshua Root <j...@macports.org<mailto:j...@macports.org>> wrote: Dear Macports users, I have a MacBook Pro with MacOS 10.13.6 on which I installed several programs through Macports. However, when I installed the grace package in order to use plotting program xmgrace, the following message error pops up: Warning: Widget must be a VendorShell. Error: attempt to add non-widget child "dsm" to parent "xmgrace" which supports only widgets Notice that I have successfully installed the grace port on other older and newer machines without any problem. Googling the error, I found several old posts, which provided various possible solutions, including installing a version of XQuartz older then 2.7.9, but none of them worked for me. Therefore, I decided to remove completely Macports (and its ports) from this laptop by the procedure found here: https://guide.macports.org/chunked/installing.macports.uninstalling.html together with XQuartz. Then, after a reboot, I reinstalled Macports, XQuartz and just the grace package. In spite this reinstallation I keep having the same message error. Finally, I tried to create another account on the same laptop, installing Macports, the last available version of XQuartz (2.7.11) and the grace port in there, and this time the xmgrace programs opens like a charm. I therefore guess that the problem in the original account is caused by some user configuration, which is not removed while uninstalling Macports and XQuartz. As last attempt I tried to remove also the hidden account folder ~/Library, and reinstall again Macports and XQuartz but also this time the xmgrace command outputs the usual error message. Do you have any suggestion what I could try in order to identify the configuration file that triggers the above error? Since the original account has a lot of important data, I cannot simply remove it and create a new account in order to use xmgrace. I would really like to find the source of the error. To the best of my knowledge, this is a problem caused by using an older version of motif with a recent version of libXt. The solution is to use the current version of motif. That means rebuilding existing applications against the new motif. To go into more detail, old versions of motif relied on libXt being built with a flat namespace so they could override some of its symbols with their own versions. This was a hack, and libXt switched to a two-level namespace on Darwin quite a while ago. It took a little while for openmotif to catch up and stop requiring this, but it has also been fixed for quite some time now. If you google this error message, you'll find a lot of people saying to rename libraries or set DYLD_LIBRARY_PATH. That may have been somewhat reasonable before motif was fixed, but now it will cause many more problems than it fixes. If you previously set DYLD_LIBRARY_PATH in your environment, that would explain why a new account didn't have the issue. - Josh ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------ Forschungszentrum Juelich GmbH 52425 Juelich Sitz der Gesellschaft: Juelich Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498 Vorsitzender des Aufsichtsrats: MinDir Volker Rieke Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender), Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt, Prof. Dr. Sebastian M. Schmidt ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------