История изменений
Исправление LINUX-ORG-RU, (текущая версия) :
libplugin.so
плагины и libname.so
библиотеки, это вещи никак друг с другом не связанные, я в вопросе не разбираюсь, но кажется ты считаешь библитеку плагина равнозначной просто библиотеке которая динамически линукуется динамическим линковщиков, а это не так, плагины открываются явно как файл через dlopen
всегда, с этой точки plugin.so
ближе к тому что лежит в /bin
или вообще в /share
чем к тому что лежит в /lib
. По диагонали глянув gstreamer
смотрит в GST_PLUGIN_PATH
(судя по гуглу) или явно где ищет все файлы *.so
загружает из все подряд и пытается обработать как свой плагин, вероятно попутно пробует всё что в LD_LIBRARY_PATH
.
Так что мне кажется ты не в ту строну копаешь. Просто погляди где gstreamer ищет плагины, и положи полагин туда и всё. Или
export GST_PLUGIN_PATH=/opt/yourpligindir
Например. Плагины, это не библиотеки (ну как бы библиотеки, но есть нюанс), это программы которые просто оформлены в виде библиотеки.
Погляди API
gstreamer, там наверняка должена быть функция установки своих путей для поиска плагинов.
UDP
Исправление LINUX-ORG-RU, :
libplugin.so
плагины и libname.so
библиотеки, это вещи никак друг с другом не связанные, я в вопросе не разбираюсь, но кажется ты считаешь библитеку плагина равнозначной просто библиотеке которая динамически линукуется динамическим линковщиков, а это не так, плагины открываются явно как файл через dlopen
всегда, с этой точки plugin.so
ближе к тому что лежит в /bin
или вообще в /share
чем к тому что лежит в /lib
. По диагонали глянув gstreamer
смотрит в GST_PLUGIN_PATH
(судя по гуглу) или явно где ищет все файлы *.so
загружает из все подряд и пытается обработать как свой плагин, вероятно попутно пробует всё что в LD_LIBRARY_PATH
.
Так что мне кажется ты не в ту строну копаешь. Просто погляди где gstreamer ищет плагины, и положи полагин туда и всё. Или
export GST_PLUGIN_PATH=/opt/yourpligindir
Например. Плагины, это не библиотеки (ну как бы библиотеки, но есть нюанс), это программы которые просто оформлены в виде библиотеки.
Погляди API
gstreamer, там наверняка должена быть функция установки своих путей для поиска плагинов.
Исправление LINUX-ORG-RU, :
libplugin.so
плагины и libname.so
библиотеки, это вещи никак друг с другом не связанные, я в вопросе не разбираюсь, но кажется ты считаешь библитеку плагина равнозначной просто библиотеке которая динамически линукуется динамическим линковщиков, а это не так, плагины открываются явно как файл через dlopen
всегда, с этой точки plugin.so
ближе к тому что лежит в /bin
или вообще в /share
чем к тому что лежит в /lib
. По диагонали глянув gstreamer
смотрит в GST_PLUGIN_PATH
(судя по гуглу) или явно где ищет все файлы *.so
загружает из все подряд и пытается обработать как свой плагин, вероятно попутно пробует всё что в LD_LIBRARY_PATH
.
Так что мне кажется ты не в ту строну копаешь. Просто погляди где gstreamer ищет плагины, и положи полагин туда и всё. Или
export GST_PLUGIN_PATH=/opt/yourpligindir
Например. Плагины, это не библиотеки (ну как бы библиотеки, но есть нюанс), это программы которые просто оформлены в виде библиотеки.
Исходная версия LINUX-ORG-RU, :
libplugin.so
плагины и libname.so
библиотеки, это вещи никак друг с другом не связанные, я в вопросе не разбираюсь, но кажется ты считаешь библитеку плагина равнозначной просто библиотеке которая динамически линукуется динамическим линковщиков, а это не так, плагины открываются явно как файл через dlopen
всегда, с этой точки plugin.so
ближе к тому что лежит в /bin
или вообще в /share
чем к тому что лежит в /lib
. По диагонали глянув gstreamer
смотрит в GST_PLUGIN_PATH
(судя по гуглу) или явно где ищет все файлы *.so
загружает из все подряд и пытается обработать как свой плагин, вероятно попутно пробует всё что в LD_LIBRARY_PATH
.
Так что мне кажется ты не в ту строну копаешь. Просто погляди где gstreamer ищет плагины, и положи полагин туда и всё. Или
export GST_PLUGIN_PATH=/opt/yourpligindir
Например. Плагины, это не библиотеки, это программы которые просто оформлены в виде библиотеки.