Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Prelinking KDE - some solutions - some problems
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page Previous  1, 2, 3, 4, 5  Next  
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
tomas78
n00b
n00b


Joined: 19 Nov 2002
Posts: 8

PostPosted: Thu Nov 21, 2002 8:46 pm    Post subject: Reply with quote

Hi,

I've made a short prelink for dummies guide. That's how I got it working. Get it here: http://cvs.gentoo.org/~cretin/prelink_for_dummies

Hope this helps,
Tomas
Back to top
View user's profile Send private message
Lovechild
Advocate
Advocate


Joined: 17 May 2002
Posts: 2858
Location: Århus, Denmark

PostPosted: Thu Nov 21, 2002 10:25 pm    Post subject: Reply with quote

Wow, that's great...

Now it might be bad to loose 3d acceleration, this would only affect nVidia cards right? (I'm hoping my ATI Radeon 7500 is in the clear). I'm guessing that we can do nothing but wait untill the XFree86, nVidia or some other smart guys come up with a brilliant hack to get this back..
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Thu Nov 21, 2002 10:59 pm    Post subject: Reply with quote

I ran into problems trying to prelink X (from a clean install):
Quote:

prelink: /usr/X11R6/bin/uil: Could not parse `/usr/X11R6/bin/uil: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
prelink: /usr/X11R6/bin/xmanimate: Could not parse `/usr/X11R6/bin/xmanimate: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
prelink: /usr/X11R6/bin/fileview: Could not parse `/usr/X11R6/bin/fileview: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
prelink: /usr/X11R6/bin/hellomotif: Could not parse `/usr/X11R6/bin/hellomotif: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
prelink: /usr/X11R6/bin/periodic: Could not parse `/usr/X11R6/bin/periodic: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
prelink: /usr/X11R6/bin/helloint: Could not parse `/usr/X11R6/bin/helloint: error while loading shared libraries: libMrm.so.3: cannot open shared object file: No such file or directory'
Aborted

There's no libMrm on my system. Where should I get it from, or hot can I disable its use? Help :)

[edit] Found it: I disabled -l /usr/X11R6/LessTif in prelink.conf


Last edited by AlterEgo on Fri Nov 22, 2002 8:26 am; edited 1 time in total
Back to top
View user's profile Send private message
tomas78
n00b
n00b


Joined: 19 Nov 2002
Posts: 8

PostPosted: Thu Nov 21, 2002 11:42 pm    Post subject: Reply with quote

did you

emerge tcp-wrappers
emerge ORBit
emerge openmotif

?

This worked for me.

Tomas
Back to top
View user's profile Send private message
Nebvin
Tux's lil' helper
Tux's lil' helper


Joined: 10 Oct 2002
Posts: 83
Location: Alberta, Canada

PostPosted: Fri Nov 22, 2002 12:48 am    Post subject: QT and opengl Reply with quote

What would be lost by compiling QT without opengl? and would that allow prelinking to work fine for KDE with the nvidia drivers?

I'm compiling right now to see if it breaks anything by disabling opengl in QT
_________________
Nebbie
"There are 10 types of people in the world, those that understand binary and those that don't."
Back to top
View user's profile Send private message
Nebvin
Tux's lil' helper
Tux's lil' helper


Joined: 10 Oct 2002
Posts: 83
Location: Alberta, Canada

PostPosted: Fri Nov 22, 2002 2:52 am    Post subject: Almost worked Reply with quote

emerge qt without opengl support, and almost got things working properly. I can now prelink the qt and kde libararies, although kde programs don't want to be prelinked yet. The error I get is "aborted" so I'm guessing prelink crashed or something.

Oh, and I lost gif support in qt :( is it possible to have opengl disabled and still have gif enabled? its strange that it wouldn't get compiled in when I only disabled opengl.
_________________
Nebbie
"There are 10 types of people in the world, those that understand binary and those that don't."
Back to top
View user's profile Send private message
Ravage
Tux's lil' helper
Tux's lil' helper


Joined: 27 Jun 2002
Posts: 107

PostPosted: Fri Nov 22, 2002 1:56 pm    Post subject: not working Reply with quote

Hi,
I want to try prelink. I did the steps as written in
http://cvs.gentoo.org/~cretin/prelink_for_dummies.

But when I start "prelink -a" , it fails:
Code:

bash-2.05b# prelink -a
prelink: /sbin/a.out: section file offsets not monotonically increasing
prelink: /usr/lib/lddstub: Using /lib/ld-linux.so.1, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib/winex/bin/wineserver: Could not parse `/usr/lib/winex/bin/wineserver: error while loading shared libraries: libwine_unicode.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/winex/bin/winebuild: Could not parse `/usr/lib/winex/bin/winebuild: error while loading shared libraries: libwine_unicode.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/winex/bin/wmc: Could not parse `/usr/lib/winex/bin/wmc: error while loading shared libraries: libwine_unicode.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/winex/bin/wrc: Could not parse `/usr/lib/winex/bin/wrc: error while loading shared libraries: libwine_unicode.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/winex/bin/wine: Could not parse `/usr/lib/winex/bin/wine: error while loading shared libraries: libntdll.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/widl: Could not parse `/usr/lib/wine/bin/widl: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/winebuild: Could not parse `/usr/lib/wine/bin/winebuild: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/winedump: Could not parse `/usr/lib/wine/bin/winedump: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/wmc: Could not parse `/usr/lib/wine/bin/wmc: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/wrc: Could not parse `/usr/lib/wine/bin/wrc: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/wine: Could not parse `/usr/lib/wine/bin/wine: error while loading shared libraries: libntdll.dll.so: cannot open shared object file: No such file or directory'
prelink: /usr/lib/wine/bin/wineserver: Could not parse `/usr/lib/wine/bin/wineserver: error while loading shared libraries: libwine.so: cannot open shared object file: No such file or directory'
Abgebrochen
bash-2.05b#


For non-germans: Abgebrochen means Aborted :)
After the last line before "Abgebrochen", it seems to work for about 10 sec - then it aborts.

Any ideas ?
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Fri Nov 22, 2002 2:59 pm    Post subject: Reply with quote

Try and exclude the usr/lib/wine(x) directories from prelinking in /etc/prelink.conf. Looks like wine(x) does not want te be prelinked.

[edit] Just maybe wine(x), with all its windows dll's cannot be prelinked at all

[edit]I got better results (in general) when performing:
prelink -u -all (so undoing all the previous prelinking), followed by
prelink -a

[edit3] some more data:
openoffice really takes off 8O :
time DISPLAY= LD_LIBRARY_PATH=. LD_BIND_NOW=1 ooffice
with prelinking |without prelinking (and after reboot)
real 0m0.364s |real 0m2.462s
user 0m0.330s |user 0m0.350
sys 0m0.030s |sys 0m0.000s

Or Phoenix: it does not show, but it starts like a rocket :)
time DISPLAY= LD_LIBRARY_PATH=. LD_BIND_NOW=1 phoenix
with prelinking |without prelinking
real 0m0.151s |real 0m1.760s
user 0m0.120s |user 0m0.130s
sys 0m0.020s |sys 0m0.010s


Last edited by AlterEgo on Fri Nov 22, 2002 7:39 pm; edited 5 times in total
Back to top
View user's profile Send private message
Ravage
Tux's lil' helper
Tux's lil' helper


Joined: 27 Jun 2002
Posts: 107

PostPosted: Fri Nov 22, 2002 3:28 pm    Post subject: ok Reply with quote

ok, but how to do it ? :oops:

prelink --help doesn't have an exclude option.
in /etc/prelink.conf I could use "/usr/lib" instead of "-l /usr/lib",
but so all other subdirs of /usr/lib aren't prelinked too.

In general:
Exclude should be an option in /etc/prelink.conf. So may be it's possible to move apps and libs which can't be prelinked in an exclude-directory when emerging??

Update: did it again without the "-l" for "/usr/lib":
Code:
bash-2.05b# prelink -a
Abgebrochen
bash-2.05b#


:?:
Back to top
View user's profile Send private message
tomas78
n00b
n00b


Joined: 19 Nov 2002
Posts: 8

PostPosted: Sat Nov 23, 2002 10:52 am    Post subject: Reply with quote

Do prelink -a -v and see which file/lib is causing problem. Remove from prelink.conf the dir containing such a file/lib.

About compiling qt (3.1) without opengl support, I noticed that it affected widgets graphical output. So I first remerged xfree as described in the guide and then could recompile qt with opengl support. Then I had no problem prelinking konqueror kmail etc...

Tomas
Back to top
View user's profile Send private message
Nebvin
Tux's lil' helper
Tux's lil' helper


Joined: 10 Oct 2002
Posts: 83
Location: Alberta, Canada

PostPosted: Sat Nov 23, 2002 12:07 pm    Post subject: gif support Reply with quote

when you compiled qt without opengl were you able to get gif support working?
_________________
Nebbie
"There are 10 types of people in the world, those that understand binary and those that don't."
Back to top
View user's profile Send private message
ejwahl
Tux's lil' helper
Tux's lil' helper


Joined: 27 May 2002
Posts: 107
Location: Rhode Island

PostPosted: Sat Nov 23, 2002 12:41 pm    Post subject: Reply with quote

I noticed that the Portage For Dummies guide is now called prelink.notes, portage.py is no longer at http://cvs.gentoo.org/~cretin and that there are three patches posted there as well as a bzipped Portage.

Can someone update the guide to tell us how to use these new files.

Also, which Xfree do we emerge? The latest in portage is 4.2.1 but there's a 4.2.1-r1 ebuild dated 21 NOV. Is that the one we want to emerge?

Thanks,
_________________
Erich J. Wahl
RLU 199500
ICQ 48100000
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Mon Nov 25, 2002 7:38 pm    Post subject: Reply with quote

BUMP 8)

Is anyone here clever enough to figure out how RedHat8 or MDK9 have solved the Nvidia+prelink issue?
It's about the only "problem" I've experienced. Prelinking is cool :)
Back to top
View user's profile Send private message
fkurth
n00b
n00b


Joined: 15 Apr 2002
Posts: 27
Location: Dresden/Germany

PostPosted: Tue Nov 26, 2002 1:09 pm    Post subject: mdk Reply with quote

wherefrom do you have the info that mdk is using prelink ?
There is no rpm for mdk out. (as i konow)
Also redhat doesnt prelink by default, you have to download a rpm
and prelink by yourself, so my experience.

btw, how to deal with "non-weak-symbols"
or "Could not trace symbol resolving"
(randomly happend by a lot of kde or X apps)
resulting in an broken binary ? (reloc error)
_________________
--
Felix Kurth
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Tue Nov 26, 2002 2:23 pm    Post subject: Re: mdk Reply with quote

fkurth wrote:
wherefrom do you have the info that mdk is using prelink ?
There is no rpm for mdk out. (as i konow)
Also redhat doesnt prelink by default, you have to download a rpm
and prelink by yourself, so my experience.

I was referring to this thread (last page)


Quote:

btw, how to deal with "non-weak-symbols"
or "Could not trace symbol resolving"
(randomly happend by a lot of kde or X apps)
resulting in an broken binary ? (reloc error)

I've seen no such errors, sorry :)
Back to top
View user's profile Send private message
Nebvin
Tux's lil' helper
Tux's lil' helper


Joined: 10 Oct 2002
Posts: 83
Location: Alberta, Canada

PostPosted: Wed Nov 27, 2002 3:31 am    Post subject: Working prelink with kde and nvidia glx Reply with quote

I finally have prelinking in KDE working with nvidia glx and xinerama :)

In brief, the steps I took was first compiling xfree with -fPIC in CFLAGS and CXXFLAGS as was shown above to take care of the xinerama problem.

To get QT compiled correctly I had to use the cvs ebuild from Dan Amarak (sp?) because for some reason when I disabled opengl in QT 3.1 it would also disable gif support which makes it hard to browse webpages :) I also had to edit the ebuild file and add -disable-opengl because teh cvs ebuild didn't respect the USE flag.

After all that is done, about 3 or 4 hours of compiling, your konqueror window should open half a second faster then before.
_________________
Nebbie
"There are 10 types of people in the world, those that understand binary and those that don't."
Back to top
View user's profile Send private message
AlterEgo
Veteran
Veteran


Joined: 25 Apr 2002
Posts: 1619

PostPosted: Thu Nov 28, 2002 6:53 pm    Post subject: Reply with quote

Thanks Nebvin,
it works nicely. I used qt-3.1.0-r1 (added "myconf="-no-xinerama"" to the ebuild) and just added "-opengl" to my USE-flags.
Back to top
View user's profile Send private message
Cretin
Retired Dev
Retired Dev


Joined: 11 Nov 2002
Posts: 23
Location: UK

PostPosted: Thu Nov 28, 2002 7:22 pm    Post subject: Reply with quote

Hello there one and all,

I think I better explain myself, being the "semi-official" prelink dev,

I have optimised the prelink stuff in portage a bit more and so the patch has grown. The easiest way now to use prelink is to download the http://cvs.gentoo.org/~cretin/portage-2.0.44.tar.bz2 and replace the one in /usr/portage/sys-apps/portage/files/ then remerge portage.

Note this includes usermode compiling so you have to make a portage user and group + a home dir at /home/portage. It is also a good idea to clean out /var/tmp/portage

Updating the notes at http://cvs.gentoo.org/~cretin/prelink.notes ...

Thats about it.
Back to top
View user's profile Send private message
anil_et
Tux's lil' helper
Tux's lil' helper


Joined: 22 Jul 2002
Posts: 98

PostPosted: Fri Nov 29, 2002 3:26 pm    Post subject: Reply with quote

Hi
I have came through all the steps in the prelink.notes
untill I did the
prelink -a
and stumbled upon the error

root@cuty et # prelink -a
prelink: /usr/lib/phoenix/mozilla-xremote-client: Could not parse `/usr/lib/phoenix/mozilla-x remote-client: error while loading shared libraries: libxpcom.so: cannot open shared object f ile: No such file or directory'
prelink: /usr/lib/phoenix/phoenix-bin: Could not parse `/usr/lib/phoenix/phoenix-bin: error w hile loading shared libraries: libmozjs.so: cannot open shared object file: No such file or d irectory'
prelink: /usr/lib/phoenix/regchrome: Could not parse `/usr/lib/phoenix/regchrome: error while loading shared libraries: libxpcom.so: cannot open shared object file: No such file or direc tory'
prelink: /usr/lib/phoenix/regxpcom: Could not parse `/usr/lib/phoenix/regxpcom: error while l oading shared libraries: libxpcom.so: cannot open shared object file: No such file or directo ry'
prelink: /usr/lib/phoenix/timebombgen: Could not parse `/usr/lib/phoenix/timebombgen: error w hile loading shared libraries: libxpcom.so: cannot open shared object file: No such file or d irectory'
prelink: /usr/lib/phoenix/xpicleanup: Could not parse `/usr/lib/phoenix/xpicleanup: error whi le loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No suc h file or directory'
Aborted
root@cuty et #

...................................................
I tried to unmerge Phoenix "no packages found"

What to do to recover this error
(I am not an expert)
Pls help me
Anil
Back to top
View user's profile Send private message
ejwahl
Tux's lil' helper
Tux's lil' helper


Joined: 27 May 2002
Posts: 107
Location: Rhode Island

PostPosted: Fri Nov 29, 2002 4:14 pm    Post subject: Reply with quote

anil_et:

OK. It looks like you're missing symbolic links to some files. Try this: "ldd /usr/lib/phoenix/phoenix-bin". You'll probably see messages that say libxpcom.so, libmozjs.so and libstdc++-libc6.2-2.so.3 can't be found. The first two are somewhere in your /usr/lib/phoenix directory. Do a "find /usr/lib/phoenix -name 'libxpcom.so'" to locate them. This is how I solved the problem. For example, "ln -s /opt/phoenix/lib/mozilla-1.3a/libxpcom.so /usr/lib/libxpcom.so". Essentially, you want links in either /usr/lib or /lib pointing to those two libraries in your /usr/lib/phoenix directory. Then try "ldd /usr/lib/phoenix/phoenix-bin" again. They should be found now. The last one, the libstdc++, is a link to /usr/lib/libstdc++-libc6.1-1.so.2, which is from the lib-compat package. If you don't have that library, then "emerge lib-compat". Then make sure a link exists between the two: "ln -s /usr/lib/libstdc++-libc6.1-1.so.2 /usr/lib/libstdc++-libc6.2-2.so.3". Then when you ldd again, everything should be found. Now try prelinking again and this time it should work.

An alternative method for libxpcom.so and libmozjs.so is to modify your ld.so.conf. Let's say those two files are in /usr/lib/phoenix/lib. Then add the line /usr/lib/phoenix/lib to /etc/ld.so.conf. Save, quit and "ldconfig". Then try "ldd /usr/lib/phoenix/phoenix-bin" and those two libraries should be found. Saves the work of making symlinks. This method simply adds /usr/lib/phoenix/lib to the shared libraries search path.

HTH,
_________________
Erich J. Wahl
RLU 199500
ICQ 48100000
Back to top
View user's profile Send private message
helmers
Guru
Guru


Joined: 16 Sep 2002
Posts: 553
Location: Stange, Norway

PostPosted: Fri Nov 29, 2002 5:13 pm    Post subject: Reply with quote

Could someone explain in plain english what's the idea behind prelinking?

Also, I see the results presented about increased speed when starting applications, and it looks very good. But I'm not all that comfortable in GNU/Linux, and while looking for speed, I don't want my system do die. So... how dangerous is this?

Also, any chance it will be "mainstream" soon, or available through portage?
_________________
C is for Cookies!
Back to top
View user's profile Send private message
anil_et
Tux's lil' helper
Tux's lil' helper


Joined: 22 Jul 2002
Posts: 98

PostPosted: Fri Nov 29, 2002 5:33 pm    Post subject: Reply with quote

Thank you for the replay
I tried the way you explained.And now prelink -a does not result in any errors but...
root@cuty et # prelink -a
prelink: /usr/bin/sample-container: Cannot prelink against non-PIC shared library /usr/lib/libIIOP.so.0
prelink: /usr/libexec/eog-image-viewer: Cannot prelink against non-PIC shared library /usr/lib/libgdk-x11-2.0.so.0
prelink: /usr/lib/libstdc++-libc6.1-1.so.2: Not enough room to add .dynamic entry
prelink: /usr/bin/theme-selector-capplet: Cannot prelink against non-PIC shared library /usr/lib/libIIOP.so.0
prelink: /usr/lib/svgalib/theeDKit/plane: Cannot prelink against non-PIC shared library /usr/lib/libvga.so.1
.........
.........

prelink: /usr/bin/openjade: section file offsets not monotonically increasing
prelink: /usr/bin/gnomecc: Cannot prelink against non-PIC shared library /usr/lib/libIIOP.so.0
prelink: /usr/lib/svgalib/demos/testaccel: Cannot prelink against non-PIC shared library /usr/lib/libvga.so.1
prelink: /usr/bin/gdkxft-capplet: Cannot prelink against non-PIC shared library /usr/lib/libIIOP.so.0
prelink: /usr/bin/restorefont: Cannot prelink against non-PIC shared library /usr/lib/libvga.so.1
prelink: /usr/bin/gnome-session-properties: Cannot prelink against non-PIC shared library /usr/lib/libgdk-x11-2.0.so.0
root@cuty et #

Now if I do

et@cuty et $ time DISPLAY=LD_LIBRARY_PATH=. LD_BIND_NOW=1 konqueror
konqueror: cannot connect to X server LD_LIBRARY_PATH=.

real 0m1.812s
user 0m0.011s
sys 0m0.021s

And while starting the konqueror I dont feel any difference or speed increase

Any advice?
Thankyou in advance
Anil
Back to top
View user's profile Send private message
anil_et
Tux's lil' helper
Tux's lil' helper


Joined: 22 Jul 2002
Posts: 98

PostPosted: Sat Nov 30, 2002 4:35 am    Post subject: Reply with quote

Hi
After the reboot I could not even logon to my system...
It complains about unreadable binaries.
This is my Laptop so I am doing a quick install of redhat on a spare partition
...will try to fix (maybe reinstall) gentoo later.
" Now my Laptop is completely free from Window$"
Anil
Back to top
View user's profile Send private message
sindre
Guru
Guru


Joined: 01 Nov 2002
Posts: 315
Location: Norway

PostPosted: Sat Nov 30, 2002 7:29 pm    Post subject: Reply with quote

Quote:
Stefan Jones (unrelated to Nick, as far as we know :) is spearheading an effort to add flexible and safe library prelinking support to Gentoo Linux, which will likely be an option for Gentoo Linux 1.4.


Nice!
Back to top
View user's profile Send private message
helmers
Guru
Guru


Joined: 16 Sep 2002
Posts: 553
Location: Stange, Norway

PostPosted: Sun Dec 01, 2002 9:29 am    Post subject: Reply with quote

*dropkicked to the top*

I agree, this is very nice. I really want some more info though, such as "if I do it right, will it work for SURE?", and a few success stories would be nice.

And are there any other distros using this? What applications would benefit from this? And I agree, KDE loads like a slow cow (on my 200Mhz AMD running slackware), it uses 2-3 seconds to get up konqueror.

Any speedup is greatly appriciated.
_________________
C is for Cookies!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Goto page Previous  1, 2, 3, 4, 5  Next
Page 2 of 5

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum