Я пишу плагин для приложения.Приложение загрузит плагин, используя dlopen()
.Платформа - Fedora Linux 11. У меня есть весь исходный код приложения.
Я успешно добавил свой код в приложение, и он отлично связался, потому что все приложение было связано одновременно.Однако, в конечном счете, я хочу, чтобы мой код был отдельным плагином.
У меня возникли проблемы при сборке кода в качестве плагина.Я строю его как общую (.so) библиотеку.Мой код, естественно, ссылается на символы в приложении, поэтому мне нужно указать библиотеки, на которые плагин ссылается, используя опции g++
-L
и -l
.Тем не менее, приложение, которое принимает мой плагин, представляет собой один исполняемый файл, а не набор .so библиотек.
Здесь я упускаю некоторые основные моменты.Как мне связать мой плагин?
Обратите внимание, что я все еще пытаюсь просто создать свой плагин - я еще не дошел до того, что я пытаюсь загрузить его с помощью dlopen()
.
РЕШЕНИЕ: Спасибо всем за ваши ответы.Я использовал метод --just-symbols, предложенный nemo, и он отлично работал.Спасибо!