Взаимная линковка двух библиотек. (Как сделать?)

Модератор: Модераторы разделов

Аватара пользователя
Zeus
Сообщения: 694

Взаимная линковка двух библиотек.

Сообщение Zeus »

Дано: два класса в разных единицах компиляции. Настолько разных, что даже находятся в разных shared libraries.
Но тем или иным образом завязаны друг с другом, что требует линковаться с библиотекой "парного" класса.
А как их скомпилировать, если при линковке ещё нет второй библиотеки?
А чтобы вторую скомпилировать (и слинковать!) - нужна первая.
?
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: Взаимная линковка двух библиотек.

Сообщение sergio »

Хех, классическая задачка про курицу и яйца. :happy:
Не знаю. Не сталкивался. Помню только смутно про разруливание модулей компиляции/хедеров с такой ерундой.
Могу только предложить помучить гугля. Находит много, но по заголовкам трудно понять что к чему.
http://www.google.ru/search?q=compiling+dy...art=10&sa=N
Запросы наприм типа
linking dynamic libraries mutual dependencies gcc
compiling dynamic libraries cyclic dependencies gcc
и т.п.
Но ваще, если подумать, зависимости двух якобы отдельных библиотек друг от друга не есть гуд. Одну из зависимостей никак не прибить? Части, которые зависят, в третью либу не вытащить?
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Взаимная линковка двух библиотек.

Сообщение Zeus »

В одном проекте я, пожалуй, так и поступлю: солью три библиотеки в одну. Сути проекта это особо не противоречит. Покатит.
А вот во втором хотелось бы оставить раздельную компиляцию. Придётся искать решение.
Спасибо сказали: