Во-первых, я вообще не знаю, есть ли решение моей проблемы.
У меня следующая ситуация:
- Я разработал библиотеку фреймворков, которая зависитв некоторых других библиотеках для доступа к конкретному оборудованию и т. д.
- До сих пор эта библиотека инфраструктуры была только статически связана с
- Для исполняемого файла, который использует библиотеку инфраструктуры, только зависимости кода, которые на самом делеиспользуемые исполняемым файлом должны быть связаны.(Если у меня вообще нет доступа к конкретному оборудованию, мне не нужно зависеть от связанных с ним библиотек.)
Теперь мне нужно также сделать общий объект библиотеки фреймворка.Кроме того, зависимости доступны в виде разделяемых библиотек, поэтому нет необходимости в статических ссылках.
Проблема, с которой я столкнулся сейчас:
- При создании приложения, которое динамически связывается с каркасомбиблиотека Мне нужно либо динамически связать все зависимости с библиотекой фреймворка, либо с приложением.(В противном случае я получаю неопределенные ссылки на жалобы от ld)
Мои вопросы:
Есть ли способ игнорировать определенные зависимости общих объектов, если я знаю, что мое приложениене будет использовать код библиотеки фреймворка, который зависит от этого общего объекта?
Есть ли способ сделать это без или с минимальными изменениями кода?(переключатели компоновщика / компилятора)
Мне также нужно статическое связывание, как описано в исходной ситуации, чтобы все еще работать.
Дополнительная информация:
- Операционная система: Linux (Debian Lenny)
- Компилятор: gcc-4.3