[devel] gdm-2.13.0.10-alt1
Sergey N. Yatskevich
=?iso-8859-1?q?syatskevich_=CE=C1_altlinux=2Eru?=
Вт Мар 14 13:32:16 MSK 2006
В Втр, 14/03/2006 в 00:37 +0300, Dmitry V. Levin пишет:
> On Mon, Mar 13, 2006 at 11:18:44PM +0300, Dmitry V. Levin wrote:
> > On Mon, Mar 13, 2006 at 11:07:26PM +0300, QA Team Robot wrote:
> > > gdm - The GNOME Display Manager
> > > * Fri Mar 10 2006 Sergey N. Yatskevich <syatskevich на altlinux> 2.13.0.10-alt1
> > > - 2.13.0.10
> > > * Tue Mar 07 2006 Sergey N. Yatskevich <syatskevich на altlinux> 2.13.0.8-alt2
> > > - Disable stupid --as-needed flag for linker
> > > * Wed Feb 15 2006 Sergey N. Yatskevich <syatskevich на altlinux> 2.13.0.8-alt1
> >
> > А почему, собственно говоря, stupid?
>
> $ gcc -pipe -Wall -O2 -march=i586 -mcpu=i686 -Wall -Wmissing-prototypes -o test-ve-config test-ve-config.o -lglade-2.0 -lgtk-x11-2.0 -lxml2 -lz -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 ../vicious-extensions/libvicious.a
>
> Это не --as-needed stupid, это Makefile'ы кривые.
> Сергей, вы уверены что хотите линковать gdm со всеми этими библиотеками?
За stupid приношу свои извинения, это я погорячился. В следующей сборке
уберу.
Далее по поводу кривых Makefile. "Кривые" или "прямые" это всегда IMHO
ибо недоказуемо (IMHO конечно:-), так что не обсуждаем.
По поводу библиотек необходимых для линковки. Есть мейнстрим, который
считает, что эти библиотеки необходимы и на мой взгляд менять
что-либо в рамках отдельно взятого дистрибутива вредно поскольку
умножает количество работы без адекватного результата. А результат
неадекватен, поскольку все упомянутые библиотеки так или иначе
используются приложениями GTK и GNOME и я не вижу ничего страшного
в их прилинкове. Т.е. конечно можно заниматься оптимизацией, однако
есть и более актуальные задачи.
Конкретнее:
-lglade-2.0 - библиотека загрузки описаний интерфейсов (используется
всеми гномовскими программами и практически всеми
GTK-шными).
-lgtk-x11-2.0 - X11-specific часть библиотеки виджетов GTK. Используется
всеми.
-lxml2 - библиотека обработки XML используется всеми, кто
использует хотя бы glade-2.
-lgdk-x11-2.0 - X11-specific часть библиотеки отрисовки GTK.
Используется всеми.
-latk-1.0 - ATK - Accessibility ToolKit - используется всеми
приложениями GNOME как минимум (а вроде бы и всеми
GTK-шными).
-lgdk_pixbuf-2.0 - Обработка изображений GTK (в частности всех
пиктограмм). Используется всеми.
-lpango-1.0 - Библиотека отрисовки текстов. Используется всеми.
-lpangocairo-1.0 - CAIRO часть библиотеки pango. Сейчас используется
всеми.
-lcairo - Библиотека отрисовки. Используется всеми хотя бы
как библиотека, используемая pango.
-lgobject-2.0 - библиотека поддержки классов GTK. Используется всеми.
-lgmodule-2.0 - библиотека загрузки дополнительных модулей.
Используется всеми, так как ей пользуется gdk_pixbuf
для подгрузки модулей обработки изображений
конкретного типа.
-lglib-2.0 - Ну а это вообще база, без неё нет ни GTK, ни GNOME.
Итого, все библиотеки из приведённого списка используются для работы
приложения (хотя, и не все напрямую). Таким образом при отказе от прямой
линковки ряда библиотек речь не может идти о реальном уменьшении
количества загружаемых в память библиотек, а только о снижении
прямой зависимости от ряда библиотек (что никоим образом не исключает
косвенную зависимость). Так стоит ли оно того.
>
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
--
Sergey N. Yatskevich <syatskevich на altlinux.ru>
Подробная информация о списке рассылки Devel