Subject: Re: bug#30106: Loading file /sources/emacs/lisp/emacs-lisp/ert.elc failed to provide feature `mod-test'

From: Eli Zaretskii <[email-masked]>
Date: Mon, 15 Jan 2018 15:14:57 +0200

> Date: Mon, 15 Jan 2018 01:12:28 +0300
> From: Jean Louis <[email-masked]>
> Cc: Jean Louis <[email-masked]>, [email-masked]
> 
> Output of grep MODULES src/config.h:
> 
> #define EMACS_CONFIG_FEATURES "XAW3D XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11 MODULES LCMS2"
> #define HAVE_MODULES 1
> #define MODULES_SUFFIX ".so"
> 
> > And does src/Makefile have this line:
> > 
> >   MODULES_OBJ = dynlib.o emacs-module.o
> 
> Output of grep MODULES Makefile:
> 
> LIBMODULES = -ldl
> MODULES_OBJ = dynlib.o emacs-module.o
> 	eval.o floatfns.o fns.o font.o print.o lread.o $(MODULES_OBJ) \
>    $(NOTIFY_LIBS) $(LIB_MATH) $(LIBZ) $(LIBMODULES) $(LIBSYSTEMD_LIBS) \

This means your build does have support for modules.

Returning to the original error:

    ELC      src/emacs-module-tests.elc

  In toplevel form:
  src/emacs-module-tests.el:32:1:Error: Loading file /sources/emacs/lisp/emacs-lisp/ert.elc failed to provide feature `mod-test'

line 32 of emacs-module-test.el is this:

  (require 'mod-test mod-test-file)

So one problem could be that mod-test-file is somehow not calculated
correctly:

  (eval-and-compile
    (defconst mod-test-file
      (substitute-in-file-name
       "$EMACS_TEST_DIRECTORY/data/emacs-module/mod-test")
      "File name of the module test file."))

So maybe EMACS_TEST_DIRECTORY is incorrect, you your Emacs tree
doesn't have the test/data/emacs-module/mod-test directory, or there's
no mod-test.so file in that directory?