[gmx-users] Unable to compile plug-in support for gromacs 5.1.2

Christopher Neale chris.neale at alum.utoronto.ca
Wed Nov 23 21:22:47 CET 2016

I've now also tried gromacs 4.6.7 and though I was not able to compile with plugin support, I did get more error messages there.

Compiling gromacs 4.6.7 in the same way, I still see this output during compilation:

-- Checking for dlopen
-- Performing Test HAVE_DLOPEN
-- Performing Test HAVE_DLOPEN - Success
-- Checking for dlopen - found

However, in gmx4.6.7 (but not 5.1.2) compilation, I get the errors:

[ 55%] Building C object share/template/CMakeFiles/template.dir/template.c.o
[ 55%] Linking C executable template
../../src/gmxlib/libgmx.a(vmddlopen.c.o): In function `vmddlopen':
vmddlopen.c:(.text+0x6): undefined reference to `dlopen'
../../src/gmxlib/libgmx.a(vmddlopen.c.o): In function `vmddlerror':
vmddlopen.c:(.text+0x11): undefined reference to `dlerror'
../../src/gmxlib/libgmx.a(vmddlopen.c.o): In function `vmddlsym':
vmddlopen.c:(.text+0x21): undefined reference to `dlsym'
../../src/gmxlib/libgmx.a(vmddlopen.c.o): In function `vmddlclose':
vmddlopen.c:(.text+0x31): undefined reference to `dlclose'
collect2: ld returned 1 exit status
make[2]: *** [share/template/template] Error 1
make[1]: *** [share/template/CMakeFiles/template.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

### But I do have dlfcn.h in a standard location that should get picked up by an #include statement:

$ ls /usr/include/dlfcn.h

Still, I tried exporting CMAKE_INCLUDE_PATH=/usr/include and compiled again (clean build directory) but got the same problem (and same thing if I used -DCMAKE_INCLUDE_PATH=/usr/include as a cmake argument).

Thanks again for any help,
From: gromacs.org_gmx-users-bounces at maillist.sys.kth.se <gromacs.org_gmx-users-bounces at maillist.sys.kth.se> on behalf of Christopher Neale <chris.neale at alum.utoronto.ca>
Sent: 23 November 2016 13:23:52
To: Discussion list for GROMACS users
Subject: [gmx-users] Unable to compile plug-in support for gromacs 5.1.2

This sender failed our fraud detection checks and may not be who they appear to be. Learn about spoofing at http://aka.ms/LearnAboutSpoofing

Dear Users:

I tried to compile gromacs 5.1.2 with plugin support, but upon running gmx trjconv I get the following error message indicating that plugin support was not actually included:

$ /scratch/cneale/exe/GROMACS/exec/gromacs-5.1.2/serial_plugins/bin/gmx trjconv -f MD1.mdcrd.nc -s EM.gro  -o a.xtc

<... snip ...>

Fatal error:
Not supported in read_first_frame: MD1.mdcrd.nc. Please make sure that the file is a trajectory.
GROMACS is not compiled with plug-in support. Thus it cannot read non-GROMACS trajectory formats using the VMD plug-ins.
Please compile with plug-in support if you want to read non-GROMACS trajectory formats.

### compilation was via nohup ./cn_compile.sh , where the contents of that compilation script are:
mkdir -p ../../../exec/gromacs-5.1.2/serial_plugins
export FFTW_LOCATION=/scratch/cneale/exe/FFTW/fftw-3.3.4/exec
/scratch/cneale/exe/CMAKE/cmake-3.5.1-Linux-x86_64/bin/cmake ../../../source/gromacs-5.1.2/ \
      -DCMAKE_INSTALL_PREFIX=$(pwd)/../../../exec/gromacs-5.1.2/serial_plugins \
      -DGMX_X11=OFF \
      -DGMX_MPI=OFF \
      -DCMAKE_C_COMPILER=gcc \
      -DGMX_GPU=OFF \
make -j 8
make install -j 8

### I also tried adding the following preliminary command, but it made no difference:
export VMD_PLUGIN_PATH=/scratch/cneale/exe/vmd-1.9.2/plugins/LINUXAMD64/molfile

Also, including -DGMX_LOAD_PLUGINS=ON to the cmake command did not help either.

### Here is some further information that might be useful based on the other posts I saw on this topic:

$ grep PLUG CMakeCache.txt
//ADVANCED property for variable: GMX_LOAD_PLUGINS

$ grep DLOPEN CMakeCache.txt

$ grep HAVE_DLOPEN nohup.out
-- Performing Test HAVE_DLOPEN
-- Performing Test HAVE_DLOPEN - Success

$ ls /scratch/cneale/exe/vmd-1.9.2/plugins/LINUXAMD64/molfile
abinitplugin.so    brixplugin.so  dcdplugin.so     fs4plugin.so      jsplugin.so      molemeshplugin.so  pbeqplugin.so      rst7plugin.so          vaspchgcarplugin.so   webpdbplugin.so
avsplugin.so       carplugin.so   dlpolyplugin.so  gamessplugin.so   lammpsplugin.so  msmsplugin.so      pdbplugin.so       situsplugin.so         vaspoutcarplugin.so   xbgfplugin.so
babelplugin.so     ccp4plugin.so  dmsplugin.so     graspplugin.so    maeffplugin.so   namdbinplugin.so   phiplugin.so       spiderplugin.so        vaspparchgplugin.so   xsfplugin.so
basissetplugin.so  corplugin.so   dsn6plugin.so    grdplugin.so      mapplugin.so     netcdfplugin.so    pltplugin.so       stlplugin.so           vaspposcarplugin.so   xyzplugin.so
bgfplugin.so       cpmdplugin.so  dtrplugin.so     gridplugin.so     mdfplugin.so     offplugin.so       pqrplugin.so       tinkerplugin.so        vaspxdatcarplugin.so
binposplugin.so    crdplugin.so   dxplugin.so      gromacsplugin.so  mol2plugin.so    parm7plugin.so     psfplugin.so       uhbdplugin.so          vaspxmlplugin.so
biomoccaplugin.so  cubeplugin.so  edmplugin.so     hoomdplugin.so    moldenplugin.so  parmplugin.so     raster3dplugin.so  vasp5xdatcarplugin.so  vtfplugin.so

Thank you for your advice on this compilation with plugins,
Gromacs Users mailing list

* Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before posting!

* Can't post? Read http://www.gromacs.org/Support/Mailing_Lists

* For (un)subscribe requests visit
https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or send a mail to gmx-users-request at gromacs.org.

More information about the gromacs.org_gmx-users mailing list