Author Topic: psclient stopped working  (Read 2091 times)

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
psclient stopped working
« on: December 29, 2005, 01:18:54 pm »
Everything has been working great for a few weeks apart from a few known problems, occasional crashes and missing textures being the worst ( mostly down to incompatability between present version CS and AMD64FX)

I have recently upgraded my Suse 9.3 to 10.0 and Planeshift has stopped working, running psclient from a terminal gives -

./psclient.bin: error while loading shared libraries: libsmpeg-0.4.so.0:
cannot open shared object file: No such file or directory

Further investigation of Suse 10 does not show this as being part of the distribution any more, unless it is hidden in some other library. I have found a opy of it in Mandriva 10 but it is throwing up even more missing dependancies.

Does anyone know a quick way for me to get back to Hydlaa?
« Last Edit: December 29, 2005, 01:23:44 pm by tinkerbelle »

Jannis

  • Traveller
  • *
  • Posts: 42
    • View Profile
(No subject)
« Reply #1 on: December 29, 2005, 02:05:39 pm »
Try to get the old version of \"libsmpeg\" and it will work again. Since I don\'t use SuSE I can\'t tell you which package it is, sorry. Maybe you can find logs, which packages were updated.

Araye

  • Hydlaa Citizen
  • *
  • Posts: 277
    • View Profile
    • The Enlightened
I use SuSE 9.3
« Reply #2 on: December 29, 2005, 03:55:54 pm »
The library is part of:

smpeg-0.4.5-228.1

I don\'t have the install disks sitting right here or I\'d make a link for you.

I\'m sure you can dl it from opensuse.org or a mirror ftp site.  Do a google search, I\'m sure you\'ll find it.

Also, you may want to do a --nodeps install.

Araye
« Last Edit: December 29, 2005, 03:57:09 pm by Araye »

Tharizdun

  • Hydlaa Resident
  • *
  • Posts: 168
    • View Profile
(No subject)
« Reply #3 on: December 30, 2005, 02:15:39 am »
http://rpmfind.net/linux/rpm2html/search.php?query=libsmpeg-0.4.so.0

Since the rpm listed is for SuSE 9.3 and you are running 10, I suggest you download the source rpm instead and compile it ( using rpm --rebuild, or rpmbuild, or however SuSE handles these ) to produce a binary rpm thats  suited to the libraries, filesystem layout, etc thats specific to SuSE 10.  

You will need compilers, development tools like make, dependant libraries, etc for this compile to complete successfully.

http://ftp://rpmfind.net/linux/SuSE-Linux/i386/update/9.3/rpm/src/smpeg-0.4.5-228.1.src.rpm

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
(No subject)
« Reply #4 on: January 02, 2006, 11:54:30 am »
I have now got smpeg installed and that gives me libsmpeg-0.4.so.0, but psclient still wont run as it cant find libsmpeg-0.4.so.0, and to be honest I cant find it either even though YAST claims it is installed.

What I have not yet done is Tharizdun\'s suggestion of rebuilding from source, mainly as I\'m not sure exactly what to do, if someone can lead me throught he process I am willing to try it.

Araye

  • Hydlaa Citizen
  • *
  • Posts: 277
    • View Profile
    • The Enlightened
(No subject)
« Reply #5 on: January 02, 2006, 06:43:05 pm »
OK so now what you need to do is make a symbolic link.  I don\'t know why it didn\'t do it when you installed the rpm, but that\'s not the point.

For me (a SuSE 9.3 user) libsmpeg is in my /usr/lib directory

First su to root.

Then cd to /usr/lib
Then ln -s libsmpeg-0.4.so.0.1.4 libsmpeg-0.4.so.0

or link to whatever the installed libsmpeg you installed is...

The commands are:

> su
> password
# cd /usr/lib
# ls | grep libsmpeg*  <-- this will tell you what libsmpeg you have installed
# ln -s libsmpeg-0.4.so.0.1.4 libsmpeg-0.4.so.0
# exit
> cd ~/planeshift
> ./psclient

fun fun fun

Now all you guru\'s out there, if I made a booboo or there is another step, please pm me and I\'ll fix my instructions and give you credit!!!

WooHoo!

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
(No subject)
« Reply #6 on: January 02, 2006, 11:48:41 pm »
Great idea - only drawback is that the file is not on my computer, YAST claims it is installed but I cant find it.

Tharizdun

  • Hydlaa Resident
  • *
  • Posts: 168
    • View Profile
(No subject)
« Reply #7 on: January 02, 2006, 11:55:11 pm »
One other thing I might suggest is to locate the library and then make sure its in a path that can be seen and utilised by the OS.

To find it you could use locate or find, but the easiest way is to use the packaging tools to find out where it was installed: \'rpm -ql libsmpeg\', which gives you a list of all files present in the installed libsmpeg package.

If rpm says \'no such package\' or a similar error try \'locate libsmpeg\'.

Once you have the absolute path to the library ( say /opt/planeshift/lib/libsmpeg-0.4.so.0  for example ) make sure this path is  added to /etc/ld.so.conf if not already present, you will need to edit this as root. That is, add \'/opt/planeshift/lib\' on a new line, underneath the existing paths like /usr/lib, /usr/local/lib and so on.

Then run \'ldconfig\' to scan the new library path and add the libraries to the system library cache.  

And that should be it. You can repeat the above for any other libraries that  are in out of the way locations, as might be the case if you have to use 3rd party rpms for any other planeshift parts like crystalspace, openal, etc.

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
(No subject)
« Reply #8 on: January 03, 2006, 12:58:37 pm »
I have absolute no idea what is going on here.

entering -
 rpm -ql smpeg

gives the result -

/usr/bin/plaympeg
/usr/bin/plaympeg.window
/usr/lib/libsmpeg-0.4.so.0
/usr/lib/libsmpeg-0.4.so.0.1.4
/usr/lib/libsmpeg.la
/usr/share/doc/packages/smpeg
/usr/share/doc/packages/smpeg/CHANGES
/usr/share/doc/packages/smpeg/COPYING
/usr/share/doc/packages/smpeg/README
/usr/share/man/man1/plaympeg.1.gz

entering -
 rpm -ql libsmpeg

gives me -
package libsmpeg is not installed.

In fact none of the 3 lib files are present on the system, I have no idea why yast claims they are installed or why they were not in fact installed.

Tharizdun

  • Hydlaa Resident
  • *
  • Posts: 168
    • View Profile
(No subject)
« Reply #9 on: January 03, 2006, 01:45:41 pm »
A damaged install? Files that were deleted somehow? Anyways, as long as you still have the original binary .rpm file you can uninstall/reinstall and see if the libraries are being installed properly.

Before doing that, run a \'rpm -V smpeg\' which will do a Verify and compare the file timestamps/md5sums/sizes/perms of what the package database thinks, compared to whats on the actual disk. If the library files are indeed missing, then the output should report on these inconsistences. If there is no output, it means the package DB matched whats installed, that everything should be in its proper place and has not been modified in any way.

To uninstall then reinstall:

rpm --erase smpeg
rpm --install /path/to/smpeg.i586.rpm

The good news is that the smpeg package looks like it creates the needed symlink /usr/lib/libsmpeg-0.4.so.0 for you ( or its contained within the package itself ), so there is no need to manually link anything post-install.

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
(No subject)
« Reply #10 on: January 03, 2006, 02:54:57 pm »
rpm -V smpeg gives no output but the library files are not installed.

uninstall with yast as that is what I used to install it, then reinstall smpeg-0.4.5-228.1.i586.rpm from Konsole gives the same results. running rpm --erase gives error: package smpeg-0.4.5-228.1.i586.rpm is not installed.

Installing with -v option does not give much more info, only 1 line - Preparing packages for installation... before returning to command prompt.  Installing via command prompt does update yast to show that it is installed even though it isnt.

Wired_Crawler

  • Hydlaa Citizen
  • *
  • Posts: 429
    • View Profile
(No subject)
« Reply #11 on: January 03, 2006, 03:54:30 pm »
Argh..
I was writing something else, then I have noticed:
Quote
Originally posted by tinkerbelle
Everything has been working great for a few weeks apart from a few known problems, occasional crashes and missing textures being the worst ( mostly down to incompatability between present version CS and AMD64FX)

So is Your platform AMD64 ? You most likely can not use i586 binaries. Download rpm with x86-64 in the name. Or rebuild smpeg library from source. Get source rpm (smpeg-0.4.5-228.1.src.rpm) and do:

rpm --rebuild smpeg-0.4.5-228.1.src.rpm

In /usr/src/RPM/RPMS/athlon (I\'m not sure whether this path is correct) You should find your new installation file (smpeg-0.4.5-228.1.x86-64.rpm).
"Close the world, txEn eht nepO."

tinkerbelle

  • Traveller
  • *
  • Posts: 14
    • View Profile
(No subject)
« Reply #12 on: January 03, 2006, 05:35:53 pm »
I was sure the smpeg I was using was the i586 one but I found a earlier version (4.4 instead of 4.5) that is x86-64 and with that I can use PS again, so it was the wrong binary.  Thanks for all the help and patience.

All this just goes to show that my in game character (a bit simple and stupid) is not far from the real me :D
« Last Edit: January 03, 2006, 05:36:15 pm by tinkerbelle »

Araye

  • Hydlaa Citizen
  • *
  • Posts: 277
    • View Profile
    • The Enlightened
(No subject)
« Reply #13 on: January 03, 2006, 09:40:33 pm »
We are all learning.  Even the guru learns from time to time.  I probably would have made the same mistakes and have been stumped too.

Chrismo

  • Wayfarer
  • *
  • Posts: 1
    • View Profile
(No subject)
« Reply #14 on: January 19, 2006, 09:57:14 am »
I\'m running slackware and had the same problem.
I visited this page http://freshmeat.net/projects/smpeg/
downloaded this http://freshmeat.net/redir/smpeg/9713/url_zip/smpeg-0.4.4.zip

unzipped it and change to the directory

# cd smpeg-0.4.4
# configure; make; make install
# ln -s /usr/local/lib/libsmpeg-0.4.so.0.1.3 /usr/lib/libsmpeg-0.4.so.0

That seems to have worked. YMMV