HOW TO: UT2004 with Ubuntu 9.10 (Libstdc++5)


Recommended Posts

Alrighty then,

Like with all new things, some things don't work. In Ubuntu 9.04, UT2004 worked just fine. However, the library libstdc++5 was removed from Ubuntu 9.10's software channel and was replaced with version 6 of the C++ Library. That's a good thing right, having the latest - well, UT2004 requires the older library. Never fear, after searching all over the globe for the solution, I came across the answer WITHOUT command lines.

Error Message When Loading UT2004

  Quote
libstdc++.so.5 cannot open shared object file no such file or directory

Ubuntu 9.04

sudo aptitude update && sudo aptitude upgrade
sudo aptitude install libstdc++5

Ubuntu 9.10

Download: libstdc++5_3.3.6-17ubuntu1_i386.deb (32-bit installer)

Download: libstdc++5_3.3.6-17ubuntu1_amd64.deb (64-bit installer)

Just double-click to install and then you can play your game "sudo ut2004".

P.S.

Backup the file though yeah ;)

ADDITIONAL NOTE

If you install the MegaPack AFTER you've performed the above, just reinstall the v5 library and you're sorted :)

Edited by DjmUK

Wouldn't it also work if you symlink the new library to the old. required one?

ln -s /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so.5

Yeah, command line stuff but... just wondering if anyone tried and if it worked, since it asks just for the library and not the whole package.

I did run a search on my system for libstdc++.so.5 but it wasn't found. Plus, I don't wish to link all programs to library 5 when some will require library 6 in the future.

But hey, if someone tries it and it works then great - I'll update my howto text file ;)

  DjmUK said:
I did run a search on my system for libstdc++.so.5 but it wasn't found. Plus, I don't wish to link all programs to library 5 when some will require library 6 in the future.

I meant doing the opposite: keep 6 and create a libstdc++.so.5 symlink that points to version 6. Programs will link to 6 and those requiring libstdc++.so.5 will still find it.

  i_was_here said:
If you upgraded wouldn't that mean you already had libstdc++5 from the previous version(s)?

I guess that is part of why I prefer an in-place upgrade, rather than full reloads, myself.

Ah I see, I'm still considered "new" to Linux - never played with symlinks as they confuse me. But I do like that idea.

That is of course, if the older library is already on the system (it wasn't with mine, clean install).

/me updates ones how to gedit file with the symlink and shall look more into it :D

Things could explode if the two versions of the library are incompatible so symlinking might not work. Installing the stdc++5 package is the best option. The package manager will prevent packages from overwriting each others files anyways.

  Rob2687 said:
Things could explode if the two versions of the library are incompatible so symlinking might not work.

Yeah, that's why I asked if someone tried and if it worked :p I've done the symlinking trick with other libraries without problems, not sure if also with libstdc++... IIRC RedHat provides a compat package to keep compatibility with old C++ binaries, it would be funny if the RPM just symlinked stuff :p

  ichi said:
Yeah, that's why I asked if someone tried and if it worked :p I've done the symlinking trick with other libraries without problems, not sure if also with libstdc++... IIRC RedHat provides a compat package to keep compatibility with old C++ binaries, it would be funny if the RPM just symlinked stuff :p

OK, just in case anyone was wondering: no, it doesn't work :laugh:

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.