Announcement

Collapse
No announcement yet.

Backward compatibility hell

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Backward compatibility hell

    It seems that from now on more work is going to be needed to get closed source games working with up to date linux distros.

    I tried Unreal 2004, on the development version of ubuntu karmic. The adoption of libdirectfb 1.2, and libfusion 1.2, result in the game complaining about libdirectfb-1.0.so.0 etc... so I linked the newer versions to the old ones and resulted with an error 40 in libfusion.

    I haven't had time to really bother delving into it, but I guess we now also require either static versions of the old libraries, and/or have old versions of these packages in the repositories for backward compatibility (like libstdc++5).

    Now this is very irritating that those responsible for directfb, sdl development etc.. have not worked to ensure backward compatibility., and that the developer of the binary did not anticipate future version numbers and requires == versions.

  • #2
    Ho hum, I'm running Debian unstable and have an even newer version of libdirectfb installed compared to Ubuntu Karmic. UT2004 seems to work fine here?

    Comment


    • #3
      Well I get lots of stuff like this

      Code:
      ./ut2004-bin-linux-amd64: error while loading shared libraries: libdirect-1.0.so.0: cannot open shared object file: No such file or directory
      for a ton of libs, right now I'm busy copying the older 1.0 versions into my ut2004/system folder where the binary will load those instead of the system ones which are labelled 1.2.

      Are you sure you don't have any old 1.0 versions on your filesystem or ut2004/system folder?


      EDIT -- yep after copying older versions of libdirect-1.0.so.0, libfusion-1.0.so.0, libdirectfb-1.0.so.0 into the ut2004/system folder the game launches fine.

      The problem of backward compatibility needing old libs is not cool.
      Last edited by poofyyoda; 09-07-2009, 05:18 PM.

      Comment


      • #4
        Originally posted by poofyyoda View Post
        Now this is very irritating that those responsible for directfb, sdl development etc.. have not worked to ensure backward compatibility., and that the developer of the binary did not anticipate future version numbers and requires == versions.
        Wrong. The idea of those versions is that future versions of the libs might not be compatible with programs compiled for older ones. Linux closed source games need constant maintenance and forwardporting...

        Comment


        • #5
          Nope, on old libs.

          What about the SDL library? Are you using the one shipped with the game (which doesn't seem to include directfb support) or have you replaced it since?

          Comment


          • #6
            Originally posted by nanonyme View Post
            Wrong. The idea of those versions is that future versions of the libs might not be compatible with programs compiled for older ones. Linux closed source games need constant maintenance and forwardporting...
            So how can we expect game developers to bother about linux then when the ecosystem is so screwed?

            Comment


            • #7
              Originally posted by whizse View Post
              Nope, on old libs.

              What about the SDL library? Are you using the one shipped with the game (which doesn't seem to include directfb support) or have you replaced it since?
              That'll be what it is.. thanks for the tip, I replaced the libsdl ages ago with one on the system. I guess I need to change it again with newer distro ones.

              It's still a bit annoying how I can't just copy my game folder to other computers and just have it work, without manual linking etc..

              Comment


              • #8
                Just create a symlink to the system libSDL.

                Comment


                • #9
                  Originally posted by poofyyoda View Post
                  So how can we expect game developers to bother about linux then when the ecosystem is so screwed?
                  Can we?

                  Comment


                  • #10
                    UT2004 was released five years ago, and still works. That's good enough for me

                    Besides, I think iD Software have a very good solution to this particular problem.

                    Comment


                    • #11
                      Originally posted by whizse View Post
                      just create a symlink to the system libsdl.

                      True

                      ....

                      Comment


                      • #12
                        I think that we, non M$ based users, are quite doomed with games or softwares in general. I mean that if a game was compiled for an old ecosystem we won't be able to reproduce this ecosystem as we evolve it. The best way would be to build/package the game/software and release it with the needed libs, so it will act as a stand alone program.

                        Maybe the current closed source game makers would be kind enough to recompile the game with the new libs. But i don't really think that they would.

                        Comment


                        • #13
                          Originally posted by poofyyoda View Post
                          So how can we expect game developers to bother about linux then when the ecosystem is so screwed?
                          this is serious BS.
                          when vista came out nothing worked on it, after so long many things still dont(even after all the vendors patched their older stuff -some did).

                          now, the OSS world is constantly evolving, so basically you're getting a new OS every 6 months or year(for many cases), unless you use the 'stable/lts' or whatnot version of things... which may be more advisable to general whiners out there.
                          STILL, that doesnt keep you from simply copying the libraries/files over and play JUST FINE. its not like in win where if there is no forward OR backwards compat... you ARE screwed.

                          So all of this is very hilarious. Plus, to be honest, UBUNTU is a distro that aims to be bleeding edge, and more or less ONLY that.
                          its not like in debian or many other distros where you find a load of versions of the same libs.

                          for instance i played with emulators a lot once, and they required lots of old versions of many things... solution? simply go to your friendly package manager and install an older version of the lib.
                          OR if its so prehistoric and uncommon(why oh why?) that your "repo" doesnt have it... compile it from source.


                          the bottom line is THERE IS ALWAYS A WAY in OSS, or linux mainly.

                          NOT the case under windows...

                          so you guys really need to re-evaluate this posture, and that 'windows' mindset.

                          cheers

                          Comment


                          • #14
                            so? just get a copy of those libs, it aint that hard

                            look at it from the windows P.O.V. your fucked if it doesn't work because of a core change to the OS (and that can happen every 3years ... happened 2k -> XP, XP->vista [ok 5for that one] and even vista->win7)

                            Windows dll model has no concept of versioned libs side by side (they have a fugly SxS virtual db todo it now but it is... FUGLY

                            linux/*NIX has been able todo versioned shared libs since the year... dot.
                            Now if a major change happened to the kernel (warranting a 2.8.x) or to Glibc then panic BUT even still those two have been stable for what? years

                            Comment


                            • #15
                              UT2004 breaks without directFB libraries?

                              Sounds more like Ubuntu is screwed up to me, Gentoo's UT2004 has no such dependency (and it even got an official update last week!)

                              Comment

                              Working...
                              X