From: Axel Kohlmeyer (
Date: Sat Jul 30 2022 - 16:04:14 CDT


a few corrections.

- you are mixing up GCC and Glibc
- it is the Glibc developers that have decided to "retire" some of the
auxiliary libraries that are bundled with Glibc and move their
functionality into the main binary.
- this change has nothing to do with snaps. in fact, you would not be able
to even launch snaps without a working C library, i.e. Glibc, installed
- backward compatibility for development, can be easily achieved with a few
strategic dynamic links or by providing a dummy *static* library under the
name libdl.a (so that no entry for a dynamic library is registered with the
resulting executable). The file you have found is the
corresponding dummy library that provides backward compatibility at runtime
for old executables.

Your change to remove -ldl is a very valid step. It is not unusual that
changes to the makefiles are required when compiling. it is just unexpected
for Linux where things have been very stable for quite some time. During my
time using Linux I have already experienced two *major* transitions related
to the C library: first the transition from the a.out format to the ELF
format (and from to and a drastic change in how shared
libraries and objects are built; and second the transition from a
customized glibc1 implementation to using the standard glibc2 distribution
(and thus from to In comparison, this is a rather
minor thing.

Given the age of vmd 1.9.3 and the fact that many new features and updates
for recent developments are only available in newer versions, I am
wondering if you would not be better off compiling the most recent
alpha/beta release version.

Best regards,

On Sat, Jul 30, 2022 at 3:57 PM Strahs, Dr. Daniel Bernard <>

> Hello all:
> I just finished compiling VMD 1.9.3 under Ubuntu 22.04LTS. A couple of
> weeks ago I had downtime, and I thought this time would be appropriate for
> updating my laptop from Ubuntu 20.04LTS to 22.04LTS.
> Some colleagues had expressed dissatisfaction with 22.04LTS so I had
> waited until I was between teaching semesters. For those of you who don't
> know, Ubuntu has transitioned some software applications/suites to SNAP.
> Among the apps transitioned include the C library. I'm also not a fan of
> snaps - some of the snaps are problematic, such as firefox.
> VMD 1.93 from source didn't install correctly the 1st time. Many plugins
> were listed as missing. Investigation indicated that all of the missing
> plugins either were binaries compiled from source or such binaries as
> required packages.
> I tracked down the issue to which is used for dynamic loading;
> this library is included in the TCL calls for the LINUXAMD64 target of the
> plugin Make-arch files. Although is present, the generic alias
> is not.
> Since GCC 2.34, dynamic loading is accomplished in the C library. Ubuntu
> 22.04LTS uses GCC 2.35, and they're both downloaded snaps. My guess is that
> libdl is not being given enough consideration and may be on the way to
> obsolescence.
> Once I removed "-ldl" from the Make-arch TCL call, the plugins build
> correctly and VMD starts with correct plugin loading.
> Be well y'all!
> Dan Strahs
> Biology Department
> Pace University, NYC

Dr. Axel Kohlmeyer;!!DZ3fjg!4s9BVNLMH-Nh77ubtbX1wO9wWtGvIpsY-622qcoL1xZUGVzX6yZLQynh2Sso86SxnsA_HVl2k-OD06cAdw$ 
College of Science & Technology, Temple University, Philadelphia PA, USA
International Centre for Theoretical Physics, Trieste. Italy.