Динамически загружаемые библиотеки
Динамически загружаемая библиотека — это библиотека, которая загружается по требованию, когда ее возможности впервые необходимы. Emacs поддерживает такую загрузку по требованию вспомогательных библиотек для некоторых своих функций.
- Переменная: dynamic-library-alist
-
Это список динамических библиотек и внешних файлов библиотек, их реализующих.
Каждый элемент — это список вида
(library files…), гдеcar— символ, представляющий поддерживаемую внешнюю библиотеку, а остальные — строки, задающие альтернативные имена файлов для этой библиотеки.Emacs пытается загрузить библиотеку из файлов в порядке их появления в списке; если ни один файл не найден, сеанс Emacs не будет иметь доступа к этой библиотеке, и предоставляемые ею функции будут недоступны.
Поддержка изображений на некоторых платформах использует эту возможность. Вот пример установки этой переменной для поддержки изображений в MS-Windows:
(setq dynamic-library-alist '((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll") (png "libpng12d.dll" "libpng12.dll" "libpng.dll" "libpng13d.dll" "libpng13.dll") (jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll") (tiff "libtiff3.dll" "libtiff.dll") (gif "giflib4.dll" "libungif4.dll" "libungif.dll") (svg "librsvg-2-2.dll") (gdk-pixbuf "libgdk_pixbuf-2.0-0.dll") (glib "libglib-2.0-0.dll") (gobject "libgobject-2.0-0.dll")))Обратите внимание, что типы изображений
pbmиxbmне требуют записей в этой переменной, так как они не зависят от внешних библиотек и всегда доступны в Emacs.Также обратите внимание, что эта переменная не предназначена для общего доступа к внешним библиотекам; загрузить можно только те библиотеки, которые уже известны Emacs.
Эта переменная игнорируется, если заданная библиотека статически связана с Emacs.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Dynamic-Libraries.html