Ruslan Ermilov wrote:
> 
> On Fri, Feb 08, 2002 at 07:06:09AM -0800, Terry Lambert wrote:
> > Maxim Sobolev wrote:
> > > No, I meant ld(1). The problem here is that in the case when libc is
> > > recorded before libc_r in dynamic dependencies list the resulting
> > > executable may not work correctly (see my testcase).
> >
> > Patient: "Doctor, it hurts when I record libc before libc_r
> >         in the dynamic dependencies list!"
> >
> > Doctor:  [expected response]
> >
> > 8-).
> >
> > Seriously, the "Evolution" build process is seriously
> > broken; it works on Linux because Linux has a simple
> > threads implementation, rather than an efficient one.
> >
> Doctor's Assistant: "No library should ever have an explicit
> dependency on libc".

But no library has it here! libc comes out of blue just before libc_r
- see attached script. Perhaps I'm missing something, but I can't
figure out where it comes from, could you?

-Maxim
Script started on Fri Feb  8 17:41:11 2002
root@notebook# gmake
Making all in glade
gmake[1]: ���� � ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell/glade'
gmake[1]: ���� `all' �� ������� ���������� ������.
gmake[1]: ����� �� ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell/glade'
Making all in importer
gmake[1]: ���� � ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell/importer'
gmake[1]: ���� `all' �� ������� ���������� ������.
gmake[1]: ����� �� ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell/importer'
gmake[1]: ���� � ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell'
/bin/sh ../libtool --mode=link cc  -pipe -O -mpreferred-stack-boundary=2 
-march=pentium -I/usr/X11R6/include -Wall -Wunused  -L/usr/X11R6/lib -o evolution  
e-activity-handler.o e-component-registry.o e-corba-shortcuts.o 
e-corba-storage-registry.o e-corba-storage.o e-folder-type-registry.o e-folder.o 
e-gray-bar.o e-local-folder.o e-local-storage.o e-setup.o e-shell-about-box.o 
e-shell-folder-commands.o e-shell-folder-creation-dialog.o 
e-shell-folder-selection-dialog.o e-shell-folder-title-bar.o e-shell-importer.o 
e-shell-offline-handler.o e-shell-startup-wizard.o 
e-shell-user-creatable-items-handler.o e-shell-utils.o e-shell-view-menu.o 
e-shell-view.o e-shell.o e-shortcuts-view-model.o e-shortcuts-view.o e-shortcuts.o 
e-splash.o e-storage-set-view.o e-storage-set.o e-storage.o e-summary-storage.o 
e-task-bar.o e-task-widget.o e-uri-schema-registry.o evolution-storage-set-view.o 
evolution-storage-set-view-factory.o main.o libeshell.la                               
                        importer/libevolution-importer.la                              
 ../widgets/e-timezone-dialog/libetimezonedialog.a               
../widgets/misc/libemiscwidgets.a                       ../e-util/libeutil.la          
                 ../libical/src/libical/libical-evolution.la             -Wl,-E 
-L/usr/X11R6/lib -L/usr/local/lib -lgal -lgnomeprint -lfreetype -lglade-gnome -lglade 
-lxml -lXpm -ljpeg -lgnomeui -lart_lgpl -lgdk_imlib -ltiff -lungif -lpng -lz -lSM 
-lICE -lgnome -lgnomesupport -lesd -laudiofile -lgdk_pixbuf -lgtk12 -lgdk12 
-lgmodule12 -lglib12 -lintl -lXext -lX11 -lm -lgnomecanvaspixbuf -lgiconv -lc_r 
-L/usr/local/lib -lgthread12 -lglib12 -lc_r                                          
-Wl,-E -L/usr/X11R6/lib -L/usr/local/lib -lgnomeprint -lXpm -ljpeg -lgnomeui 
-lgdk_imlib -ltiff -lungif -lpng -lSM -lICE -lgnome -lgnomesupport -lesd -laudiofile 
-lgdk_pixbuf -lgtk12 -lgdk12 -lgmodule12 -lglib12 -lintl -lXext -lX11 -lart_lgpl -lm 
-lxml -lz -lfreetype                                             -Wl,-E 
-L/usr/X11R6/lib -L/usr/local/lib -lgtkhtml -lgal -lgnomeprint -lfreetype 
-lglade-gnome -lglade -lxml -lXpm -ljpeg -lgnomeui -lart_lgpl -lgdk_imlib -ltiff 
-lungif -lpng -lz -lSM -lICE -lgnome -lgnomesupport -lesd -laudiofile -lgdk_pixbuf 
-lgnomecanvaspixbuf -lgiconv -lgconf-gtk-1 -lgconf-1 -loaf -lORBitCosNaming -lORBit 
-lIIOP -lORBitutil -lwrap -lgtk12 -lgdk12 -lgmodule12 -lglib12 -lintl -lXext -lX11 -lm 
                                                -Wl,-E -L/usr/X11R6/lib 
-L/usr/local/lib -lbonobo_conf -lbonobo -loaf -lORBitCosNaming -lORBit -lIIOP 
-lORBitutil -lwrap -lbonobox -lXpm -ljpeg -lgnomeui -lart_lgpl -lgdk_imlib -ltiff 
-lungif -lpng -lSM -lICE -lgdk_pixbuf -lgtk12 -lgdk12 -lgmodule12 -lXext -lX11 -lxml 
-lz -lgnome -lgnomesupport -lintl -lesd -laudiofile -lm -lglib12                       
                    -Wl,-E -L/usr/X11R6/lib -L/usr/local/lib -lbonobo -loaf 
-lORBitCosNaming -lORBit -lIIOP -lORBitutil -lwrap -lbonobox -lbonobo-print 
-lgnomeprint -lfreetype -lglade-gnome -lglade -lxml -lgdk_pixbuf -lgnomecanvaspixbuf 
-lXpm -ljpeg -lgnomeui -lart_lgpl -lgdk_imlib -ltiff -lungif -lpng -lz -lSM -lICE 
-lgtk12 -lgdk12 -lgmodule12 -lXext -lX11 -lgnome -lgnomesupport -lintl -lesd 
-laudiofile -lm -lglib12  -lc_r -L/usr/local/lib
cc -pipe -O -mpreferred-stack-boundary=2 -march=pentium -I/usr/X11R6/include -Wall 
-Wunused -o .libs/evolution e-activity-handler.o e-component-registry.o 
e-corba-shortcuts.o e-corba-storage-registry.o e-corba-storage.o 
e-folder-type-registry.o e-folder.o e-gray-bar.o e-local-folder.o e-local-storage.o 
e-setup.o e-shell-about-box.o e-shell-folder-commands.o 
e-shell-folder-creation-dialog.o e-shell-folder-selection-dialog.o 
e-shell-folder-title-bar.o e-shell-importer.o e-shell-offline-handler.o 
e-shell-startup-wizard.o e-shell-user-creatable-items-handler.o e-shell-utils.o 
e-shell-view-menu.o e-shell-view.o e-shell.o e-shortcuts-view-model.o 
e-shortcuts-view.o e-shortcuts.o e-splash.o e-storage-set-view.o e-storage-set.o 
e-storage.o e-summary-storage.o e-task-bar.o e-task-widget.o e-uri-schema-registry.o 
evolution-storage-set-view.o evolution-storage-set-view-factory.o main.o -Wl,-E -Wl,-E 
-Wl,-E -Wl,-E -Wl,-E  -L/usr/X11R6/lib ./.libs/libeshell.so -L/usr/local/lib 
importer/.libs/libevolution-importer.so 
../widgets/e-timezone-dialog/libetimezonedialog.a ../widgets/misc/libemiscwidgets.a 
../e-util/.libs/libeutil.al ../libical/src/libical/.libs/libical-evolution.so 
-lgthread12 -lgtkhtml -lgal -lgiconv -lgconf-gtk-1 -lgconf-1 -lbonobo_conf -lbonobo 
-loaf -lORBitCosNaming -lORBit -lIIOP -lORBitutil -lwrap -lbonobox -lbonobo-print 
-lgnomeprint -lfreetype -lglade-gnome -lglade -lxml -lgdk_pixbuf -lgnomecanvaspixbuf 
-lXpm -ljpeg -lgnomeui -lart_lgpl -lgdk_imlib -ltiff -lungif -lpng -lz -lSM -lICE 
-lgtk12 -lgdk12 -lgmodule12 -lXext -lX11 -lgnome -lgnomesupport -lintl -lesd 
-laudiofile -lm -lglib12 -Wl,--rpath -Wl,/usr/X11R6/lib
importer/.libs/libevolution-importer.so: warning: mktemp() possibly used unsafely; 
consider using mkstemp()
creating evolution
gmake[1]: ����� �� ������� 
`/tmp/portbuild/usr/ports/mail/evolution/work/evolution-1.0.2/shell'
root@notebook# ldd .libs/evolution
.libs/evolution:
        libeshell.so.0 => /usr/X11R6/lib/libeshell.so.0 (0x280ab000)
        libevolution-importer.so.0 => /usr/X11R6/lib/libevolution-importer.so.0 
(0x280e0000)
        libical-evolution.so.0 => /usr/X11R6/lib/libical-evolution.so.0 (0x280fd000)
        libgthread12.so.3 => /usr/local/lib/libgthread12.so.3 (0x2814e000)
        libgtkhtml.so.21 => /usr/X11R6/lib/libgtkhtml.so.21 (0x28151000)
        libgal.so.19 => /usr/X11R6/lib/libgal.so.19 (0x281c5000)
        libgiconv.so.2 => /usr/local/lib/libgiconv.so.2 (0x282ab000)
        libgconf-gtk-1.so.1 => /usr/X11R6/lib/libgconf-gtk-1.so.1 (0x28380000)
        libgconf-1.so.1 => /usr/X11R6/lib/libgconf-1.so.1 (0x28386000)
        libbonobo_conf.so.0 => /usr/X11R6/lib/libbonobo_conf.so.0 (0x283bd000)
        libbonobo.so.2 => /usr/X11R6/lib/libbonobo.so.2 (0x283df000)
        liboaf.so.0 => /usr/X11R6/lib/liboaf.so.0 (0x2843b000)
        libORBitCosNaming.so.2 => /usr/local/lib/libORBitCosNaming.so.2 (0x28453000)
        libORBit.so.2 => /usr/local/lib/libORBit.so.2 (0x2845b000)
        libIIOP.so.2 => /usr/local/lib/libIIOP.so.2 (0x284a3000)
        libORBitutil.so.2 => /usr/local/lib/libORBitutil.so.2 (0x284ab000)
        libwrap.so.3 => /usr/lib/libwrap.so.3 (0x284ad000)
        libbonobox.so.2 => /usr/X11R6/lib/libbonobox.so.2 (0x284b4000)
        libbonobo-print.so.2 => /usr/X11R6/lib/libbonobo-print.so.2 (0x28509000)
        libgnomeprint.so.16 => /usr/X11R6/lib/libgnomeprint.so.16 (0x2850d000)
        libfreetype.so.8 => /usr/X11R6/lib/libfreetype.so.8 (0x28966000)
        libglade-gnome.so.4 => /usr/X11R6/lib/libglade-gnome.so.4 (0x2899f000)
        libglade.so.4 => /usr/X11R6/lib/libglade.so.4 (0x289ad000)
        libxml.so.5 => /usr/local/lib/libxml.so.5 (0x289c3000)
        libgdk_pixbuf.so.2 => /usr/X11R6/lib/libgdk_pixbuf.so.2 (0x28a31000)
        libgnomecanvaspixbuf.so.1 => /usr/X11R6/lib/libgnomecanvaspixbuf.so.1 
(0x28a45000)
        libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4 (0x28a49000)
        libjpeg.so.9 => /usr/local/lib/libjpeg.so.9 (0x28a56000)
        libgnomeui.so.5 => /usr/X11R6/lib/libgnomeui.so.5 (0x28a73000)
        libart_lgpl.so.5 => /usr/X11R6/lib/libart_lgpl.so.5 (0x28b39000)
        libgdk_imlib.so.5 => /usr/X11R6/lib/libgdk_imlib.so.5 (0x28b46000)
        libtiff.so.4 => /usr/local/lib/libtiff.so.4 (0x28b6f000)
        libungif.so.5 => /usr/local/lib/libungif.so.5 (0x28bb2000)
        libpng.so.5 => /usr/local/lib/libpng.so.5 (0x28bba000)
        libz.so.2 => /usr/lib/libz.so.2 (0x28bdb000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x28be8000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x28bf1000)
        libgtk12.so.2 => /usr/X11R6/lib/libgtk12.so.2 (0x28c06000)
        libgdk12.so.2 => /usr/X11R6/lib/libgdk12.so.2 (0x28d24000)
        libgmodule12.so.3 => /usr/local/lib/libgmodule12.so.3 (0x28d55000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x28d58000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28d65000)
        libgnome.so.5 => /usr/X11R6/lib/libgnome.so.5 (0x28e1e000)
        libgnomesupport.so.5 => /usr/X11R6/lib/libgnomesupport.so.5 (0x28e34000)
        libintl.so.1 => /usr/local/lib/libintl.so.1 (0x28e3b000)
        libesd.so.2 => /usr/local/lib/libesd.so.2 (0x28e40000)
        libaudiofile.so.0 => /usr/local/lib/libaudiofile.so.0 (0x28e47000)
        libm.so.2 => /usr/lib/libm.so.2 (0x28e67000)
        libglib12.so.3 => /usr/local/lib/libglib12.so.3 (0x28e8b000)
        libc.so.5 => /usr/lib/libc.so.5 (0x28eac000)
        libc_r.so.5 => /usr/lib/libc_r.so.5 (0x28f5d000)
        libpopt.so.0 => /usr/local/lib/libpopt.so.0 (0x28f7b000)
        libXThrStub.so.6 => /usr/X11R6/lib/libXThrStub.so.6 (0x28f81000)
root@notebook# ldd .libs/evolution | awk '{print $3}'
/usr/X11R6/lib/libeshell.so.0
/usr/X11R6/lib/libevolution-importer.so.0
/usr/X11R6/lib/libical-evolution.so.0
/usr/local/lib/libgthread12.so.3
/usr/X11R6/lib/libgtkhtml.so.21
/usr/X11R6/lib/libgal.so.19
/usr/local/lib/libgiconv.so.2
/usr/X11R6/lib/libgconf-gtk-1.so.1
/usr/X11R6/lib/libgconf-1.so.1
/usr/X11R6/lib/libbonobo_conf.so.0
/usr/X11R6/lib/libbonobo.so.2
/usr/X11R6/lib/liboaf.so.0
/usr/local/lib/libORBitCosNaming.so.2
/usr/local/lib/libORBit.so.2
/usr/local/lib/libIIOP.so.2
/usr/local/lib/libORBitutil.so.2
/usr/lib/libwrap.so.3
/usr/X11R6/lib/libbonobox.so.2
/usr/X11R6/lib/libbonobo-print.so.2
/usr/X11R6/lib/libgnomeprint.so.16
/usr/X11R6/lib/libfreetype.so.8
/usr/X11R6/lib/libglade-gnome.so.4
/usr/X11R6/lib/libglade.so.4
/usr/local/lib/libxml.so.5
/usr/X11R6/lib/libgdk_pixbuf.so.2
/usr/X11R6/lib/libgnomecanvaspixbuf.so.1
/usr/X11R6/lib/libXpm.so.4
/usr/local/lib/libjpeg.so.9
/usr/X11R6/lib/libgnomeui.so.5
/usr/X11R6/lib/libart_lgpl.so.5
/usr/X11R6/lib/libgdk_imlib.so.5
/usr/local/lib/libtiff.so.4
/usr/local/lib/libungif.so.5
/usr/local/lib/libpng.so.5
/usr/lib/libz.so.2
/usr/X11R6/lib/libSM.so.6
/usr/X11R6/lib/libICE.so.6
/usr/X11R6/lib/libgtk12.so.2
/usr/X11R6/lib/libgdk12.so.2
/usr/local/lib/libgmodule12.so.3
/usr/X11R6/lib/libXext.so.6
/usr/X11R6/lib/libX11.so.6
/usr/X11R6/lib/libgnome.so.5
/usr/X11R6/lib/libgnomesupport.so.5
/usr/local/lib/libintl.so.1
/usr/local/lib/libesd.so.2
/usr/local/lib/libaudiofile.so.0
/usr/lib/libm.so.2
/usr/local/lib/libglib12.so.3
/usr/lib/libc.so.5
/usr/lib/libc_r.so.5
/usr/local/lib/libpopt.so.0
/usr/X11R6/lib/libXThrStub.so.6
root@notebook# ldd .libs/evolution | awk '{print $3}' | grep -v /usr/lib/libc.so | 
xargs ldd | grep libc.so
root@notebook# exit

Script done on Fri Feb  8 17:43:04 2002

Reply via email to