История изменений
Исправление 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
Например. Плагины, это не библиотеки, это программы которые просто оформлены в виде библиотеки.