From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <4001614E.20808@l14.ru> Date: Sun, 11 Jan 2004 17:44:30 +0300 From: =?KOI8-R?Q?=E1=CC=C5=CB=D3=C5=CA_=EC=C0=C2=C9=CD=CF=D7?= User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.4) Gecko/20030710 X-Accept-Language: ru-ru, ru MIME-Version: 1.0 To: ALT Devel discussion list Subject: Re: [devel] Re: .a vs .so References: <20040106102757.GK12479@pyro.hopawar.private.net> <20040107163156.GA15124@mhz.mikhail.zabaluev.name> <3FFC48B3.9020506@l14.ru> <200401081054.01927.ilar@altlinux.ru> <20040108134326.GA13308@nomad.office.altlinux.org> <20040108143655.GC2244@pyro.hopawar.private.net> <20040108160330.GA6208@nomad.office.altlinux.org> <20040108161404.GN2244@pyro.hopawar.private.net> <20040108201457.GA28535@nomad.office.altlinux.org> <20040110222311.GB16686@mhz.mikhail.zabaluev.name> <20040111022329.GD12307@localhost.localdomain> In-Reply-To: <20040111022329.GD12307@localhost.localdomain> X-Enigmail-Version: 0.76.1.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.1.3 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 11 Jan 2004 14:46:54 -0000 Archived-At: List-Archive: List-Post: >5. После обнаружения .la-файла, оригинальный (неправленный Альтом) libtool >использует информацию из dependency_libs для рекурсивного разворачивания >цепочки зависимостей библиотек до самого низа. При этом очевидно, что >при некоторых условиях возможна ситуация, когда одновременно линкеру >передаются две версии одной и той же библиотеки (н-р, libdb4.x :-)). > Вопрос а если в системе стоят только libdb4.0 и libdb4.1, libdb4.1-devel (со статиком) будет подхвачена libdb4.0? > >Это, как справедливо отметил Дмитрий Левин, чревато всякими "Ужасными >Последствиями" для базы rpm, в частности. > А bte зачем делали? >7.2. Во-вторых, вне зависимости от характера линковки, нам, строго говоря, >_необходима_ информация, записанная в dependency_libs. Необходимость >этой информации обусловлена [достаточно гипотетической, впрочем] >возможностью наличия в зависимостях статической библиотеки без >соответствующего динамического аналога (я припоминаю, что, вроде, то ли >libkrb, то ли libsocks [некогда] распространялся в таком вот виде). Плюс >всякие third-party, но это уже их головная боль, наверное. > > другими словами, даже деление на devel и devel-static с последующей неустановкой *-static для сборки программы с динамической линковкой в общем случае некорректно? >7.3. Во-третьих, кроме dependency libs, содержимое .la-файла (конкретно, >имя библиотеки) используется libtool'ом для обеспечения корректной работы >с ltdl-модулями (см. autobook) > Предыдущее предположение и здесь в силе? > >8. Предложено (Дмитрием же) альтернативное решение для проблемы из п. 5. >libtool подправлен таким образом, чтобы при динамической сборке на линуксе >список dependency_libs не раскрывался вовсе (при статической все по-прежнему). >Это решение, впрочем, не закрывает проблему 7.2, но, по крайней мере, >вроде бы, решает все остальные. > А почему нельзя на этапе сборки просто ограничить выбор пакетов правильными зависимостями в спеке? Разве это не ограничит выбор dependency_libs?