Остроумие пакета программного обеспечения его собственная динамическая библиотека - где установить?

Я записал часть программного обеспечения (a .deb пакет), который поставлется с динамической библиотекой (foo.so) который только применим к моему softare.

Куда я должен разместить библиотеку и как я могу загрузить ее?

Я не думаю это /usr/lib хорошее место, потому что никакой другой softare никогда не будет пользоваться библиотекой. Если это находится в, например, /usr/lib/mypackage/foo.so (который был бы моим предпочтительным местом)? Если бы да, как динамический компоновщик нашел бы библиотеку? Так как это только применимо для моего программного обеспечения, записи в /etc/ld.so.conf.d/ (который видим ко всему другому программному обеспечению), не предпочтительный вариант. (Я использую Lua ffi для загрузки библиотеки, таким образом, я думаю, что могу настроить путь загрузки.) Или если я использую LD_LIBRARY_PATH?

2
задан 5 September 2018 в 21:46

1 ответ

  • Если они только немногие lib без какой-либо озабоченности по поводу конфликта имен затем стараются не создавать родительскую папку для группировки их.
  • Кроме того, необходимо быть помещенным в корректную папку для систем мультиархитектуры.

Пример debian/packagename.install файл:

usr/lib/lib*.so /usr/lib/${DEB_HOST_MULTIARCH}
usr/lib/lib*.so.* /usr/lib/${DEB_HOST_MULTIARCH}

Ссылка: руководство специалиста по обслуживанию Debian - MultiArch

1
ответ дан 2 December 2019 в 04:41

Другие вопросы по тегам:

Похожие вопросы: