* [devel] Как заставить прогу тайти билиотеку?
@ 2004-03-09 10:39 Igor Tertishny
2004-03-09 10:50 ` [devel] " Alexey Tourbin
2004-03-09 13:14 ` [devel] " Andrei Bulava
0 siblings, 2 replies; 28+ messages in thread
From: Igor Tertishny @ 2004-03-09 10:39 UTC (permalink / raw)
To: devel
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 791 bytes --]
Прошу подсказать, как заставить прогу при запуске найти нужную ей библиотеку,
находящуюся в папке /usr/lib/библиотека? %add_findprov_lib_path
%_libdir/hk_classes помогает только при сборке, но при запуске прога не
находит того, что ей нужно. Можно, конечно, перепаковать файлы прямо в
/usr/lib, но это же не то. Да и по политике неправильно. Извините за
ламмерство, но я очень хочу разобраться где тут собака порылась, потому прошу
помощи. Всю документацию по текущему rpm я перечитал, но нужного мне не
нашел.
Вывод ниже:
[ilar@yby SPECS]$ knoda
knoda: error while loading shared libraries: libhk_classes.so.5: cannot open
shared object file: No such file or directory
[ilar@yby SPECS]$ ls /usr/lib/hk_classes
drivers libhk_classes.so libhk_classes.so.5 libhk_classes.so.5.0.1
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 10:39 [devel] Как заставить прогу тайти билиотеку? Igor Tertishny
@ 2004-03-09 10:50 ` Alexey Tourbin
2004-03-09 14:29 ` Алексей Любимов
2004-03-10 8:39 ` Igor Tertishny
2004-03-09 13:14 ` [devel] " Andrei Bulava
1 sibling, 2 replies; 28+ messages in thread
From: Alexey Tourbin @ 2004-03-09 10:50 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 380 bytes --]
On Tue, Mar 09, 2004 at 12:39:34PM +0200, Igor Tertishny wrote:
> [ilar@yby SPECS]$ knoda
> knoda: error while loading shared libraries: libhk_classes.so.5: cannot open
> shared object file: No such file or directory
> [ilar@yby SPECS]$ ls /usr/lib/hk_classes
> drivers libhk_classes.so libhk_classes.so.5 libhk_classes.so.5.0.1
ld(1)/rpath
ld.so(8)/LD_LIBRARY_PATH
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Как заставить прогу тайти билиотеку?
2004-03-09 10:39 [devel] Как заставить прогу тайти билиотеку? Igor Tertishny
2004-03-09 10:50 ` [devel] " Alexey Tourbin
@ 2004-03-09 13:14 ` Andrei Bulava
1 sibling, 0 replies; 28+ messages in thread
From: Andrei Bulava @ 2004-03-09 13:14 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, 9 Mar 2004, Igor Tertishny wrote:
> Прошу подсказать, как заставить прогу при запуске найти нужную
> ей библиотеку, находящуюся в папке /usr/lib/библиотека?
> %add_findprov_lib_path %_libdir/hk_classes помогает только при
> сборке, но при запуске прога не находит того, что ей нужно.
> Можно, конечно, перепаковать файлы прямо в /usr/lib, но это же
> не то. Да и по политике неправильно.
Можно с этого места поподробнее? Где почитать про то, что
правильно / неправильно класть в /usr/lib ? Спрашиваю не из
праздного любопытства, у самого такая же задача возникла при
опакечивании. Ограничился перепаковкой файлов в /usr/lib, но
теперь начинаю терять уверенность в своей правоте :-/
<skip>
// AB1002-UANIC
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 10:50 ` [devel] " Alexey Tourbin
@ 2004-03-09 14:29 ` Алексей Любимов
2004-03-09 14:40 ` Alexander Bokovoy
2004-03-09 14:41 ` Alexey Tourbin
2004-03-10 8:39 ` Igor Tertishny
1 sibling, 2 replies; 28+ messages in thread
From: Алексей Любимов @ 2004-03-09 14:29 UTC (permalink / raw)
To: ALT Devel discussion list
Alexey Tourbin пишет:
>On Tue, Mar 09, 2004 at 12:39:34PM +0200, Igor Tertishny wrote:
>
>
>>[ilar@yby SPECS]$ knoda
>>knoda: error while loading shared libraries: libhk_classes.so.5: cannot open
>>shared object file: No such file or directory
>>[ilar@yby SPECS]$ ls /usr/lib/hk_classes
>>drivers libhk_classes.so libhk_classes.so.5 libhk_classes.so.5.0.1
>>
>>
>
>ld(1)/rpath
>ld.so(8)/LD_LIBRARY_PATH
>
>
LD_LIBRARY_PATH
Это здорово, но так ищутся только прямо вызываемые библиотеки.
Например, кладем libc.2.3.2 в ~/lib и показываем на нее LD_LIBRARY_PATH=~/lib program
а та жалуется на /lib/ld.so.2
Естественно, жалуется, ведь соответствующая ей ld.so.2 лежит в ~/lib, а не в /lib.
А вот как в таком случае действовать, я пока не нашел.
chrpath тоже не помог. Не видит он, типа, никаких путей в libc.2.3.2
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 14:29 ` Алексей Любимов
@ 2004-03-09 14:40 ` Alexander Bokovoy
2004-03-09 14:52 ` Алексей Любимов
2004-03-20 8:57 ` Klimchev Konstantin
2004-03-09 14:41 ` Alexey Tourbin
1 sibling, 2 replies; 28+ messages in thread
From: Alexander Bokovoy @ 2004-03-09 14:40 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, Mar 09, 2004 at 05:29:52PM +0300, Алексей Любимов wrote:
>
>
> Alexey Tourbin пишет:
>
> >On Tue, Mar 09, 2004 at 12:39:34PM +0200, Igor Tertishny wrote:
> >
> >
> >>[ilar@yby SPECS]$ knoda
> >>knoda: error while loading shared libraries: libhk_classes.so.5: cannot
> >>open shared object file: No such file or directory
> >>[ilar@yby SPECS]$ ls /usr/lib/hk_classes
> >>drivers libhk_classes.so libhk_classes.so.5 libhk_classes.so.5.0.1
> >>
> >>
> >
> >ld(1)/rpath
> >ld.so(8)/LD_LIBRARY_PATH
> >
> >
>
> LD_LIBRARY_PATH
>
> Это здорово, но так ищутся только прямо вызываемые библиотеки.
> Например, кладем libc.2.3.2 в ~/lib и показываем на нее
> LD_LIBRARY_PATH=~/lib program
> а та жалуется на /lib/ld.so.2
> Естественно, жалуется, ведь соответствующая ей ld.so.2 лежит в ~/lib, а не
> в /lib.
> А вот как в таком случае действовать, я пока не нашел.
> chrpath тоже не помог. Не видит он, типа, никаких путей в libc.2.3.2
Я уже неоднократно публиковал здесь рецепт:
LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/
^ permalink raw reply [flat|nested] 28+ messages in thread
* [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 14:29 ` Алексей Любимов
2004-03-09 14:40 ` Alexander Bokovoy
@ 2004-03-09 14:41 ` Alexey Tourbin
1 sibling, 0 replies; 28+ messages in thread
From: Alexey Tourbin @ 2004-03-09 14:41 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 399 bytes --]
On Tue, Mar 09, 2004 at 05:29:52PM +0300, Алексей Любимов wrote:
> LD_LIBRARY_PATH=~/lib program
> а та жалуется на /lib/ld.so.2
> Естественно, жалуется, ведь соответствующая ей ld.so.2 лежит в ~/lib, а не
> в /lib.
LD_LIBRARY_PATH=~/lib ~/lib/ld.so $PROG
> А вот как в таком случае действовать, я пока не нашел.
> chrpath тоже не помог. Не видит он, типа, никаких путей в libc.2.3.2
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 14:40 ` Alexander Bokovoy
@ 2004-03-09 14:52 ` Алексей Любимов
2004-03-09 15:40 ` Dmitry V. Levin
2004-03-20 8:57 ` Klimchev Konstantin
1 sibling, 1 reply; 28+ messages in thread
From: Алексей Любимов @ 2004-03-09 14:52 UTC (permalink / raw)
To: ALT Devel discussion list
Alexander Bokovoy пишет:
>On Tue, Mar 09, 2004 at 05:29:52PM +0300, Алексей Любимов wrote:
>
>
>>Alexey Tourbin пишет:
>>
>>
>>
>>>On Tue, Mar 09, 2004 at 12:39:34PM +0200, Igor Tertishny wrote:
>>>
>>>
>>>
>>>
>>>>[ilar@yby SPECS]$ knoda
>>>>knoda: error while loading shared libraries: libhk_classes.so.5: cannot
>>>>open shared object file: No such file or directory
>>>>[ilar@yby SPECS]$ ls /usr/lib/hk_classes
>>>>drivers libhk_classes.so libhk_classes.so.5 libhk_classes.so.5.0.1
>>>>
>>>>
>>>>
>>>>
>>>ld(1)/rpath
>>>ld.so(8)/LD_LIBRARY_PATH
>>>
>>>
>>>
>>>
>>LD_LIBRARY_PATH
>>
>>Это здорово, но так ищутся только прямо вызываемые библиотеки.
>>Например, кладем libc.2.3.2 в ~/lib и показываем на нее
>>LD_LIBRARY_PATH=~/lib program
>>а та жалуется на /lib/ld.so.2
>>Естественно, жалуется, ведь соответствующая ей ld.so.2 лежит в ~/lib, а не
>>в /lib.
>>А вот как в таком случае действовать, я пока не нашел.
>>chrpath тоже не помог. Не видит он, типа, никаких путей в libc.2.3.2
>>
>>
>Я уже неоднократно публиковал здесь рецепт:
>LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
>
>
Спасибо всем откликнувшимся. Почему то когда читал, не отложилась такая
хитрая конструкция.
Попробую так.
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 14:52 ` Алексей Любимов
@ 2004-03-09 15:40 ` Dmitry V. Levin
2004-03-09 15:52 ` Алексей Любимов
0 siblings, 1 reply; 28+ messages in thread
From: Dmitry V. Levin @ 2004-03-09 15:40 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 479 bytes --]
On Tue, Mar 09, 2004 at 05:52:10PM +0300, Алексей Любимов wrote:
> >Я уже неоднократно публиковал здесь рецепт:
> >LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
> >
> Спасибо всем откликнувшимся. Почему то когда читал, не отложилась такая
> хитрая конструкция.
> Попробую так.
Запомните простое правило:
Если вы меняете libc, то вы обязаны заменить и dynamic linker на строго
соответствующую версию. Эти две программы очень тесно связаны.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 15:40 ` Dmitry V. Levin
@ 2004-03-09 15:52 ` Алексей Любимов
2004-03-09 16:05 ` Alexander Bokovoy
2004-03-09 16:49 ` Alexey Tourbin
0 siblings, 2 replies; 28+ messages in thread
From: Алексей Любимов @ 2004-03-09 15:52 UTC (permalink / raw)
To: ALT Devel discussion list
Dmitry V. Levin пишет:
>On Tue, Mar 09, 2004 at 05:52:10PM +0300, Алексей Любимов wrote:
>
>
>>>Я уже неоднократно публиковал здесь рецепт:
>>>LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
>>>
>>>
>>>
>>Спасибо всем откликнувшимся. Почему то когда читал, не отложилась такая
>>хитрая конструкция.
>>Попробую так.
>>
>>
>
>Запомните простое правило:
>Если вы меняете libc, то вы обязаны заменить и dynamic linker на строго
>соответствующую версию. Эти две программы очень тесно связаны.
>
>
Да это как раз понятно. Под чрутом все прозрачно получается, но больно
много тащить приходиться...
Ктож знал, что файл ld-2.3.2.so в переменной LD_LIBRARY_PATH может
каталогом прикидываться?
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 15:52 ` Алексей Любимов
@ 2004-03-09 16:05 ` Alexander Bokovoy
2004-03-09 16:49 ` Alexey Tourbin
1 sibling, 0 replies; 28+ messages in thread
From: Alexander Bokovoy @ 2004-03-09 16:05 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, Mar 09, 2004 at 06:52:53PM +0300, Алексей Любимов wrote:
>
>
> Dmitry V. Levin пишет:
>
> >On Tue, Mar 09, 2004 at 05:52:10PM +0300, Алексей Любимов wrote:
> >
> >
> >>>Я уже неоднократно публиковал здесь рецепт:
> >>>LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
> >>Спасибо всем откликнувшимся. Почему то когда читал, не отложилась такая
> >>хитрая конструкция.
> >>Попробую так.
> >Запомните простое правило:
> >Если вы меняете libc, то вы обязаны заменить и dynamic linker на строго
> >соответствующую версию. Эти две программы очень тесно связаны.
> Да это как раз понятно. Под чрутом все прозрачно получается, но больно
> много тащить приходиться...
> Ктож знал, что файл ld-2.3.2.so в переменной LD_LIBRARY_PATH может
> каталогом прикидываться?
Где он там каталогом прикидывается? Вы посмотрите повнимательнее.
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/
^ permalink raw reply [flat|nested] 28+ messages in thread
* [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 15:52 ` Алексей Любимов
2004-03-09 16:05 ` Alexander Bokovoy
@ 2004-03-09 16:49 ` Alexey Tourbin
2004-03-09 17:37 ` Alexey Lubimov
1 sibling, 1 reply; 28+ messages in thread
From: Alexey Tourbin @ 2004-03-09 16:49 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1050 bytes --]
On Tue, Mar 09, 2004 at 06:52:53PM +0300, Алексей Любимов wrote:
> Да это как раз понятно. Под чрутом все прозрачно получается, но больно
> много тащить приходиться...
> Ктож знал, что файл ld-2.3.2.so в переменной LD_LIBRARY_PATH может
> каталогом прикидываться?
Вы ничего не поняли. :(
Файл ld-2.3.2.so не в переменной LD_LIBRARY_PATH (и уж тем более не
прикидывается каталогом), файл ld-2.3.2.so -- это сам executable.
В качестве параметра он берет динамический бинарь и его аргументы.
$ /lib/ld-linux.so.2 /bin/date
Tue Mar 9 19:40:40 MSK 2004
$
Это стандартный способ запуска динамических бинарей (с помощью
динамического линкера). Просто в нормальной ситуации /lib/ld-linux.so.2
прозрачно подгружается ядром (execve), и ему передается управление.
А откуда ядро знает, какой линкер подгружать? А из самого бинаря:
$ strings /bin/date | head -1
/lib/ld-linux.so.2
$
Поэтому его и нельзя подменить с помощью LD_LIBRARY_PATH: эта переменная
влияет на сам линкер, который должен быть к тому моменту уже загружен.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 16:49 ` Alexey Tourbin
@ 2004-03-09 17:37 ` Alexey Lubimov
0 siblings, 0 replies; 28+ messages in thread
From: Alexey Lubimov @ 2004-03-09 17:37 UTC (permalink / raw)
To: ALT Devel discussion list
Alexey Tourbin пишет:
> On Tue, Mar 09, 2004 at 06:52:53PM +0300, Алексей Любимов wrote:
>
>>Да это как раз понятно. Под чрутом все прозрачно получается, но больно
>>много тащить приходиться...
>>Ктож знал, что файл ld-2.3.2.so в переменной LD_LIBRARY_PATH может
>>каталогом прикидываться?
>
>
> Вы ничего не поняли. :(
> Файл ld-2.3.2.so не в переменной LD_LIBRARY_PATH (и уж тем более не
> прикидывается каталогом), файл ld-2.3.2.so -- это сам executable.
> В качестве параметра он берет динамический бинарь и его аргументы.
>
> $ /lib/ld-linux.so.2 /bin/date
> Tue Mar 9 19:40:40 MSK 2004
> $
>
> Это стандартный способ запуска динамических бинарей (с помощью
> динамического линкера). Просто в нормальной ситуации /lib/ld-linux.so.2
> прозрачно подгружается ядром (execve), и ему передается управление.
> А откуда ядро знает, какой линкер подгружать? А из самого бинаря:
>
> $ strings /bin/date | head -1
> /lib/ld-linux.so.2
> $
здесь у меня был пробел в знаниях...
>
> Поэтому его и нельзя подменить с помощью LD_LIBRARY_PATH: эта переменная
> влияет на сам линкер, который должен быть к тому моменту уже загружен.
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Devel mailing list
> Devel@altlinux.ru
> http://www.altlinux.ru/mailman/listinfo/devel
Заработало!
Даст бог, так и кады закрытые под альтлинуксом пойдут...
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 10:50 ` [devel] " Alexey Tourbin
2004-03-09 14:29 ` Алексей Любимов
@ 2004-03-10 8:39 ` Igor Tertishny
2004-03-10 9:52 ` Sergey V Turchin
` (2 more replies)
1 sibling, 3 replies; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 8:39 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 408 bytes --]
>
> ld(1)/rpath
> ld.so(8)/LD_LIBRARY_PATH
Я, кажется, неправильно сформулировал вопрос. Команда:
LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно запускает прогу и
библиотека находится. Но я-то собираю пакет и хотел бы избежать любых проблем
при его запуске из меню или из консоли, неважно. И не знаю, к моему глубокому
стыду, как это сделать. Хоть бери, да делай линк на библиотеку в /usr/lib.
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 8:39 ` Igor Tertishny
@ 2004-03-10 9:52 ` Sergey V Turchin
2004-03-10 9:57 ` Denis Ovsienko
2004-03-10 16:17 ` [devel] Re: Как заставить прогу тайти билиотеку? Алексей Любимов
2 siblings, 0 replies; 28+ messages in thread
From: Sergey V Turchin @ 2004-03-10 9:52 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 741 bytes --]
В сообщении от Wednesday 10 March 2004 11:39 Igor Tertishny
написал(a):
> > ld(1)/rpath
> > ld.so(8)/LD_LIBRARY_PATH
>
> Я, кажется, неправильно сформулировал вопрос. Команда:
> LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно запускает
> прогу и библиотека находится. Но я-то собираю пакет и хотел бы
> избежать любых проблем при его запуске из меню или из консоли,
> неважно. И не знаю, к моему глубокому стыду, как это сделать.
> Хоть бери, да делай линк на библиотеку в /usr/lib.
Попробуйте ложить в /usr/lib/kde3 все библиотеки,
которые много пишут на экран при
ldd -r /path_to/lib_unresolved_symbol.so
--
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 8:39 ` Igor Tertishny
2004-03-10 9:52 ` Sergey V Turchin
@ 2004-03-10 9:57 ` Denis Ovsienko
2004-03-10 10:08 ` Igor Tertishny
2004-03-10 16:17 ` [devel] Re: Как заставить прогу тайти билиотеку? Алексей Любимов
2 siblings, 1 reply; 28+ messages in thread
From: Denis Ovsienko @ 2004-03-10 9:57 UTC (permalink / raw)
To: ALT Devel discussion list
> Я, кажется, неправильно сформулировал вопрос. Команда:
> LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно запускает прогу
Мне кажется, что программа с модулями/плагинами должна сама знать, где они
лежат, и лазить туда dlopen().
--
DO4-UANIC
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 9:57 ` Denis Ovsienko
@ 2004-03-10 10:08 ` Igor Tertishny
2004-03-10 11:15 ` Sergey V Turchin
2004-03-10 11:18 ` Sergey V Turchin
0 siblings, 2 replies; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 10:08 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 558 bytes --]
Среда 10 Март 2004 11:57, Denis Ovsienko написал:
> > Я, кажется, неправильно сформулировал вопрос. Команда:
> > LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно запускает прогу
>
> Мне кажется, что программа с модулями/плагинами должна сама знать, где они
> лежат, и лазить туда dlopen().
>
Она и знала. Но прога ориентирована на *.la файлы, что для Сизифа не здраво.
Как заставить ее искать *.so я не знаю, известные мне методы не срабатывают.
Пожалуй, действительно придется поступить по совету сергея и уложить эти
библиотеки в /usr/lib/kde3.
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 10:08 ` Igor Tertishny
@ 2004-03-10 11:15 ` Sergey V Turchin
2004-03-10 11:23 ` Igor Tertishny
2004-03-10 11:18 ` Sergey V Turchin
1 sibling, 1 reply; 28+ messages in thread
From: Sergey V Turchin @ 2004-03-10 11:15 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 790 bytes --]
В сообщении от Wednesday 10 March 2004 13:08 Igor Tertishny
написал(a):
> Среда 10 Март 2004 11:57, Denis Ovsienko написал:
> > > Я, кажется, неправильно сформулировал вопрос. Команда:
> > > LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно
> > > запускает прогу
> >
> > Мне кажется, что программа с модулями/плагинами должна сама
> > знать, где они лежат, и лазить туда dlopen().
>
> Она и знала. Но прога ориентирована на *.la файлы, что для Сизифа
> не здраво. Как заставить ее искать *.so я не знаю, известные мне
> методы не срабатывают. Пожалуй, действительно придется поступить
> по совету сергея и уложить эти библиотеки в /usr/lib/kde3.
Вместе с .la
--
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 10:08 ` Igor Tertishny
2004-03-10 11:15 ` Sergey V Turchin
@ 2004-03-10 11:18 ` Sergey V Turchin
2004-03-10 11:36 ` [devel] Re: Как заставить прогу найти библиотеку? Igor Tertishny
1 sibling, 1 reply; 28+ messages in thread
From: Sergey V Turchin @ 2004-03-10 11:18 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 835 bytes --]
В сообщении от Wednesday 10 March 2004 13:08 Igor Tertishny
написал(a):
> Среда 10 Март 2004 11:57, Denis Ovsienko написал:
> > > Я, кажется, неправильно сформулировал вопрос. Команда:
> > > LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно
> > > запускает прогу
> >
> > Мне кажется, что программа с модулями/плагинами должна сама
> > знать, где они лежат, и лазить туда dlopen().
>
> Она и знала. Но прога ориентирована на *.la файлы, что для Сизифа
> не здраво. Как заставить ее искать *.so я не знаю, известные мне
> методы не срабатывают. Пожалуй, действительно придется поступить
> по совету сергея и уложить эти библиотеки в /usr/lib/kde3.
Эти библиотеки из libhk_classes или из подпакетов knoda?
--
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 11:15 ` Sergey V Turchin
@ 2004-03-10 11:23 ` Igor Tertishny
0 siblings, 0 replies; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 11:23 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 44 bytes --]
>
> Вместе с .la
Ясно, спасибо, приступаю.
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 11:18 ` Sergey V Turchin
@ 2004-03-10 11:36 ` Igor Tertishny
2004-03-10 11:56 ` Sergey V Turchin
0 siblings, 1 reply; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 11:36 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 133 bytes --]
>
> Эти библиотеки из libhk_classes или из подпакетов knoda?
Из libhk_classes, они по умолчанию располагаются в /usr/lib/hk_classes
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 11:36 ` [devel] Re: Как заставить прогу найти библиотеку? Igor Tertishny
@ 2004-03-10 11:56 ` Sergey V Turchin
2004-03-10 12:20 ` Igor Tertishny
2004-03-10 12:35 ` Igor Tertishny
0 siblings, 2 replies; 28+ messages in thread
From: Sergey V Turchin @ 2004-03-10 11:56 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 388 bytes --]
В сообщении от Wednesday 10 March 2004 14:36 Igor Tertishny
написал(a):
> > Эти библиотеки из libhk_classes или из подпакетов knoda?
>
> Из libhk_classes, они по умолчанию располагаются в
> /usr/lib/hk_classes
А это нормально, что в них есть unresolved symbols?
--
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 11:56 ` Sergey V Turchin
@ 2004-03-10 12:20 ` Igor Tertishny
2004-03-10 12:36 ` Sergey V Turchin
2004-03-10 12:35 ` Igor Tertishny
1 sibling, 1 reply; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 12:20 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 528 bytes --]
> А это нормально, что в них есть unresolved symbols?
Нет, конечно. Но ведь это тестовая версия - 0.6.3-test2. B при указании
LD_LIBRARY_PATH=/usr/lib/hk_classes прога работает без проблем и почти не
оставляет баговых сообщений. Только при некоторых операциях с mysql. Об этом
я уже написал автору. При компиляции, хотя я использовал %__subst
's,\.la\>,.so,' configure, *.la файлы образуются и уже knoda, похоже, зависит
от них, так как при компиляции тоже образует немало этого добра. Естественно,
что я их не паковал.
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 11:56 ` Sergey V Turchin
2004-03-10 12:20 ` Igor Tertishny
@ 2004-03-10 12:35 ` Igor Tertishny
2004-03-10 13:47 ` Alexey Tourbin
1 sibling, 1 reply; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 12:35 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 1439 bytes --]
> А это нормально, что в них есть unresolved symbols?
И я, ежели честно, не знаю, как с этим справиться. Я не автор программы.
Подожду нормальной версии и посмотрю, потому-что все-таки многовато:
[ilar@yby ilar]$ ldd -r /usr/lib/hk_classes/*.so
ldd: warning: you do not have execution permission for
`/usr/lib/hk_classes/libhk_classes.so'
libpthread.so.0 => /lib/libpthread.so.0 (0x00348000)
libm.so.6 => /lib/libm.so.6 (0x0035d000)
libutil.so.1 => /lib/libutil.so.1 (0x00381000)
libdl.so.2 => /lib/libdl.so.2 (0x00384000)
libc.so.6 => /lib/libc.so.6 (0x00387000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
undefined symbol: _ZTTSt14basic_ifstreamIcSt11char_traitsIcEE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZTVSt13basic_filebufIcSt11char_traitsIcEE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZNSs4_Rep11_S_terminalE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZSt4cerr (/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZTTSt14basic_ofstreamIcSt11char_traitsIcEE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZNSs4_Rep11_S_max_sizeE
(/usr/lib/hk_classes/libhk_classes.so)
undefined symbol: _ZNSs20_S_empty_rep_storageE
И это только пятая часть.
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 12:20 ` Igor Tertishny
@ 2004-03-10 12:36 ` Sergey V Turchin
2004-03-10 12:48 ` Igor Tertishny
0 siblings, 1 reply; 28+ messages in thread
From: Sergey V Turchin @ 2004-03-10 12:36 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1016 bytes --]
В сообщении от Wednesday 10 March 2004 15:20 Igor Tertishny
написал(a):
> > А это нормально, что в них есть unresolved symbols?
>
> Нет, конечно.
Уберите.
И /usr/lib/hk_classes/*.so.* можно в /usr/lib/ слинковать.
/usr/lib/hk_classes/*.so уберите в подпакет -devel
> Но ведь это тестовая версия - 0.6.3-test2. B при
> указании LD_LIBRARY_PATH=/usr/lib/hk_classes прога работает без
> проблем и почти не оставляет баговых сообщений.
Это ничего не значит.
Эта единственная прога, knoda, может брать эти символы из другого
места.
> Только при
> некоторых операциях с mysql. Об этом я уже написал автору. При
> компиляции, хотя я использовал %__subst 's,\.la\>,.so,'
> configure, *.la файлы образуются и уже knoda, похоже, зависит от
> них, так как при компиляции тоже образует немало этого добра.
> Естественно, что я их не паковал.
Паковать не нужно только /usr/lib/*.la
Остальные нужно.
--
Regards, Sergey, ALT Linux Team, http://www.altlinux.ru
http://stinkfoot.org:11371/pks/lookup?op=get&search=0x1C2A3F08
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 12:36 ` Sergey V Turchin
@ 2004-03-10 12:48 ` Igor Tertishny
0 siblings, 0 replies; 28+ messages in thread
From: Igor Tertishny @ 2004-03-10 12:48 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: signed data --]
[-- Type: text/plain, Size: 118 bytes --]
>
> Паковать не нужно только /usr/lib/*.la
> Остальные нужно.
Ясненько... Вот оно, похоже, где собака-то порылась...
[-- Attachment #2: signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* [devel] Re: Как заставить прогу найти библиотеку?
2004-03-10 12:35 ` Igor Tertishny
@ 2004-03-10 13:47 ` Alexey Tourbin
0 siblings, 0 replies; 28+ messages in thread
From: Alexey Tourbin @ 2004-03-10 13:47 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 646 bytes --]
On Wed, Mar 10, 2004 at 02:35:53PM +0200, Igor Tertishny wrote:
> undefined symbol: _ZTTSt14basic_ofstreamIcSt11char_traitsIcEE
> (/usr/lib/hk_classes/libhk_classes.so)
> undefined symbol: _ZNSs4_Rep11_S_max_sizeE
> (/usr/lib/hk_classes/libhk_classes.so)
> undefined symbol: _ZNSs20_S_empty_rep_storageE
>
> И это только пятая часть.
Это похоже на iostream.
$ findsym _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE
/usr/lib/libstdc++.so.5: 000afae0 V _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE
/usr/lib/libstdc++.so.5.0.5: 000afae0 V _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE
$
Используйте g++ в качестве линкера.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-10 8:39 ` Igor Tertishny
2004-03-10 9:52 ` Sergey V Turchin
2004-03-10 9:57 ` Denis Ovsienko
@ 2004-03-10 16:17 ` Алексей Любимов
2 siblings, 0 replies; 28+ messages in thread
From: Алексей Любимов @ 2004-03-10 16:17 UTC (permalink / raw)
To: ALT Devel discussion list
Igor Tertishny пишет:
>>ld(1)/rpath
>>ld.so(8)/LD_LIBRARY_PATH
>>
>>
>
>Я, кажется, неправильно сформулировал вопрос. Команда:
>LD_LIBRARY_PATH=/usr/lib/hk_classes knoda действительно запускает прогу и
>библиотека находится. Но я-то собираю пакет и хотел бы избежать любых проблем
>при его запуске из меню или из консоли, неважно. И не знаю, к моему глубокому
>стыду, как это сделать. Хоть бери, да делай линк на библиотеку в /usr/lib.
>
>
тогда chrpath должен помочь
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [devel] Re: Как заставить прогу тайти билиотеку?
2004-03-09 14:40 ` Alexander Bokovoy
2004-03-09 14:52 ` Алексей Любимов
@ 2004-03-20 8:57 ` Klimchev Konstantin
1 sibling, 0 replies; 28+ messages in thread
From: Klimchev Konstantin @ 2004-03-20 8:57 UTC (permalink / raw)
To: ALT Devel discussion list
On Tue, 9 Mar 2004 16:40:33 +0200
Alexander Bokovoy <a.bokovoy@sam-solutions.net> wrote:
> Я уже неоднократно публиковал здесь рецепт:
> LD_LIBRARY_PATH=~/.lib/glibc ~/.lib/glibc/ld-2.3.2.so $@
Может быть такое в фортуну? например, в что-то типа "fortune-tips".
--
Best Regards, Konstantin Klimchev
(mailto:koka@atvc.ru jabber:koka@jabber.ru)
ATK-Internet ISP, Arkhangelsk, Russia
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2004-03-20 8:57 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-03-09 10:39 [devel] Как заставить прогу тайти билиотеку? Igor Tertishny
2004-03-09 10:50 ` [devel] " Alexey Tourbin
2004-03-09 14:29 ` Алексей Любимов
2004-03-09 14:40 ` Alexander Bokovoy
2004-03-09 14:52 ` Алексей Любимов
2004-03-09 15:40 ` Dmitry V. Levin
2004-03-09 15:52 ` Алексей Любимов
2004-03-09 16:05 ` Alexander Bokovoy
2004-03-09 16:49 ` Alexey Tourbin
2004-03-09 17:37 ` Alexey Lubimov
2004-03-20 8:57 ` Klimchev Konstantin
2004-03-09 14:41 ` Alexey Tourbin
2004-03-10 8:39 ` Igor Tertishny
2004-03-10 9:52 ` Sergey V Turchin
2004-03-10 9:57 ` Denis Ovsienko
2004-03-10 10:08 ` Igor Tertishny
2004-03-10 11:15 ` Sergey V Turchin
2004-03-10 11:23 ` Igor Tertishny
2004-03-10 11:18 ` Sergey V Turchin
2004-03-10 11:36 ` [devel] Re: Как заставить прогу найти библиотеку? Igor Tertishny
2004-03-10 11:56 ` Sergey V Turchin
2004-03-10 12:20 ` Igor Tertishny
2004-03-10 12:36 ` Sergey V Turchin
2004-03-10 12:48 ` Igor Tertishny
2004-03-10 12:35 ` Igor Tertishny
2004-03-10 13:47 ` Alexey Tourbin
2004-03-10 16:17 ` [devel] Re: Как заставить прогу тайти билиотеку? Алексей Любимов
2004-03-09 13:14 ` [devel] " Andrei Bulava
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git