Bug 12054 - Исключена сборка пакета libgd2-devel-static
: Исключена сборка пакета libgd2-devel-static
Status: CLOSED NOTABUG
: Sisyphus
(All bugs in Sisyphus/libgd2-devel)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2007-06-17 18:38 by
Modified: 2007-09-21 17:07 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2007-06-17 18:38:24
Если Sisyphus и продукты на основе него не позиционируются как платформа 
для сборки сторонних приложений, то так и скажите и мы множество 
последующих вопросов закроем.
------- Comment #1 From 2007-06-18 04:32:23 -------
Как статические библиотеки связаны с возможностью сборки сторонних приложений?
Вы чего-то недоговариваете.
------- Comment #2 From 2007-06-18 04:40:34 -------
Кстати, в этом пакете предусмотрена условная запаковка devel-static.
Так что если кажется, что это поможет, то можно пересобрать это пакет
rpm --rebuild --enable static gd2-2.0.34-alt3.src.rpm
------- Comment #3 From 2007-06-18 09:42:54 -------
(In reply to comment #1)
> Как статические библиотеки связаны с возможностью сборки сторонних 
приложений?
> Вы чего-то недоговариваете.
Вопрос в общем-то политический, однако с тенью практического неудобства 
с моей стороны.
Ну надо собрать с gd2 без зависимости на X, как прикажете это сделать?
Про пересобрать пакет gd2 с включением статической библиотекой я знаю. И 
именно так сделал, но знаете-ли в других дистрах я такой нужды не 
ощущал.

------- Comment #4 From 2007-06-18 11:11:29 -------
В пакете libgd2-2.0.34-alt2 нет зависимости на X.

Линковка со статическими библиотеками есть особое средство, которое редко
востребовано в реальной жизни.

Я согласен включить _по_умолчанию_ сборку libgd2-devel-static только в том
случае, если вы сможете продемонстрировать потребность в _этой_ статической
библиотеке.
------- Comment #5 From 2007-06-18 12:28:39 -------
Сильно сомневаюсь, что libgd2 даже установится на систему без иксов или 
её библиотеки (libX11.so.6) с такой родословной, не то что-бы 
запуститься.
[roman@roman lib]$ ldd libgd.so.2.0.34
        linux-gate.so.1 =>  (0xffffe000)
        libXpm.so.4 => /usr/lib/libXpm.so.4 (0xa7e8e000)
        libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xa7e6f000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xa7e3f000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xa7dc5000)
        libpng12.so.0 => /usr/lib/libpng12.so.0 (0xa7da1000)
        libz.so.1 => /lib/libz.so.1 (0xa7d8d000)
        libm.so.6 => /lib/libm.so.6 (0xa7d67000)
        libc.so.6 => /lib/libc.so.6 (0xa7c41000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0xa7b53000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0xa7b33000)
        /lib/ld-linux.so.2 (0x75555000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xa7b2f000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xa7b2a000)
        libdl.so.2 => /lib/libdl.so.2 (0xa7b26000)
------- Comment #6 From 2007-06-18 14:46:24 -------
$ readelf -d /usr/lib/libgd.so.2.0.34 |fgrep NEEDED
 0x00000001 (NEEDED)                     Shared library: [libXpm.so.4]
 0x00000001 (NEEDED)                     Shared library: [libjpeg.so.62]
 0x00000001 (NEEDED)                     Shared library: [libfontconfig.so.1]
 0x00000001 (NEEDED)                     Shared library: [libfreetype.so.6]
 0x00000001 (NEEDED)                     Shared library: [libpng12.so.0]
 0x00000001 (NEEDED)                     Shared library: [libz.so.1]
 0x00000001 (NEEDED)                     Shared library: [libm.so.6]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
------- Comment #7 From 2007-06-18 16:10:49 -------
Интересно, а откуда тогда ldd берёт такую информацию?
Про различие между ldd и readelf не знал. Спасибо за ликбез. :)
------- Comment #8 From 2007-06-18 16:19:32 -------
ldd показывает список всех библиотек, которые загружаются, в т.ч. библиотеки,
от
которых зависят библиотеки, от которых зависят библиотеки, ..., от которых
зависит целевой файл.
------- Comment #9 From 2007-06-18 16:41:12 -------
Тогда это проблемы не решает. Всёравно зависимость на libX11 вытянется. 
Кроме того, у меня указанная команда говорит:
[root@server lib]# readelf -d libgd.so.2.0.4 | fgrep NEEDED
 0x00000001 (NEEDED)                     Shared library: [libpng12.so.0]
 0x00000001 (NEEDED)                     Shared library: [libjpeg.so.62]
 0x00000001 (NEEDED)                     Shared library: [libfreetype.so.6]
 0x00000001 (NEEDED)                     Shared library: [libXpm.so.4]
 0x00000001 (NEEDED)                     Shared library: [libX11.so.6]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
------- Comment #10 From 2007-06-18 16:50:04 -------
У меня
$ rpmquery libgd2
libgd2-2.0.34-alt3
А у вас?

В конечном итоге я не понял, чем вас смущает libX11.so.6?
------- Comment #11 From 2007-06-18 16:54:15 -------
Извиняюсь. Не ту версию распечатал. Но это не имеет значения ибо через 
ibXpm.so.4 иксы потянутся однозначно:
[root@roman lib]# readelf -d libXpm.so.4 | fgrep NEEDED
 0x00000001 (NEEDED)                     Shared library: [libX11.so.6]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
------- Comment #12 From 2007-06-18 16:56:34 -------
Ну для встраиваемых систем с ограниченными ресурсами X будут явно 
лишними. Без иксов мне удавалось вложиться в 50Мб, без сжатия.
------- Comment #13 From 2007-06-18 17:04:03 -------
При сборке встраиваемой библиотеки желательно просто отключить поддержку
ненужного вам функционала, например, XPM.

Кстати, при линковке с libgd.a в ваше приложение попадают части libX11?
------- Comment #14 From 2007-06-18 17:16:54 -------
(In reply to comment #13)
> При сборке встраиваемой библиотеки желательно просто отключить 
поддержку
> ненужного вам функционала, например, XPM.
Тоже вариант. Хотя до этого момента казалось проще указанную библиотеку 
слинковать статически.
 
> Кстати, при линковке с libgd.a в ваше приложение попадают части libX11?
Нет. Я умышленно не использовал TrueType шрифты.

------- Comment #15 From 2007-09-21 17:07:47 -------
Кстати да. В Дебиане, с этой целью, доступен пакет libgd2-noxpm.