Q: how do I populate the cache in EMMS?

I just did a fresh install from source of Emacs, and then got the emms package from melpa. When I go to populate the EMMS cache, I get the following error message:

Error running timer ‘later-do-timer’: (file-missing "Searching for program" "No such file or directory" "emms-print-metadata")

I've gotten this message in the past, and it's always puzzled me. What is this executable (emms-print-metadata), where do I get it, and how do I install it?

I'm pretty sure I can get emms as a .deb package and install it through my distro's package manager, but that's not the point. I'd like to install EMMS through the Emacs package manager.

1 Answer 1


emms-print-metadata is a C shim to enable use of libtag for extracting metadata from music files.

It should only be needed if you have done something like

(require 'emms-info-libtag)
(setq emms-info-functions '(emms-info-libtag))

in yr config. See the EMMS manual for more information.

If libtag is installed on yr system and you want to use it, you need to get the emms source:

git clone https://git.savannah.gnu.org/git/emms.git

There you will find the C source of emms-print-metadata and a makefile.

Hope this helps.

  • Right you are; I put the emms-info-libtag part in my init file years ago and forgot all about it. It surprises me that there's an executable involved, but so it goes.
    – Dan
    Commented Nov 13, 2018 at 14:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.