[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: Faster startups by fixing C++ object files before linking (new version and results)
From:       Leon Bottou <leonb () research ! att ! com>
Date:       2001-07-28 0:16:01
[Download RAW message or body]

On Friday 27 July 2001 07:07 pm, you wrote:
> I think we should seriously consider to use this for KDE 2.2 by integrating
> it into the build system. 

Cool.   Note that this will be obsoleted by the real prelinkers (Jakub Jelinek stuff).
But in the mean time, that could be a good solution.

> I had one report though that it failed with libqt-mt (which links against 
> pthreads) any idea what could be going on there?

The QT build process is ugly because it first compiles the mt version,
then erases all object files, then makes the normal version.
If you just do  << make ;  find . -name '*.o' -exec objprelink {} \;  ; make >>
you will not get the mt version. 

Use the attached patch to change qt-XXX/configs/linux-g++-shared 
Then configure and make.

- Leon











 - L.




["configs.patch" (text/x-diff)]

--- configs/linux-g++-shared.orig	Fri Jul 27 19:44:50 2001
+++ configs/linux-g++-shared	Fri Jul 27 19:48:59 2001
@@ -32,7 +32,7 @@
 SYSCONF_LIBS_YACC	= 
 
 # Linking applications
-SYSCONF_LINK		= g++
+SYSCONF_LINK		= objprelink $(OBJECTS) $(OBJMOC) && g++
 SYSCONF_LFLAGS		= 
 SYSCONF_LIBS		= 
 
@@ -58,7 +58,8 @@
 #
 SYSCONF_LINK_SHLIB	= g++
 SYSCONF_LINK_TARGET_SHARED	= lib$(TARGET).so.$(VER_MAJ).$(VER_MIN).$(VER_PATCH)
-SYSCONF_LINK_LIB_SHARED	=  $(SYSCONF_LINK_SHLIB) -shared -Wl,-soname,lib$(TARGET).so.$(VER_MAJ) \
+SYSCONF_LINK_LIB_SHARED	=  objprelink $(OBJECTS) $(OBJMOC) && \
+			      $(SYSCONF_LINK_SHLIB) -shared -Wl,-soname,lib$(TARGET).so.$(VER_MAJ) \
 				     $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \
 				     $(OBJECTS) $(OBJMOC) $(LIBS) && \
 				 mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \

>> Visit http://master.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic