В Debian принято разделять разделяемые библиотеки на компоненты времени выполнения (libmagic1: /usr/lib/libmagic.so.1 → libmagic.so.1.0.0
) и компоненты разработки (libmagic-dev: /usr/lib/libmagic.so → …
).
Поскольку имя библиотеки libmagic.so.1
, это строка, которая встраивается в исполняемый файл, так что это файл, который загружается при запуске исполняемого файла.
Однако, поскольку библиотека указана для компоновщика как -lmagic
, она ищет libmagic.so
, поэтому она необходима для разработки.
См. Диего Э. Петтено: Линкеры и имена для получения подробной информации о том, как все это работает в Linux.
Короче, вы должны apt-get install libmagic-dev
. Это даст вам не только libmagic.so
, но и другие файлы, необходимые для компиляции, такие как /usr/include/magic.h
.