GTK2.22 for Fedora 20

Hi again,

I maybe should have posted this question in this forum.
I am looking for an RPM for gtk2.22 development for a machine running Fedora 20. I only have the gtk2.22 development binaries for Fedora 14.

Anyone know where I could find them?

Thanks!

Moderator comments were removed during original forum migration.

I do not think you will find a gtk2.22-devel package for F20. Fedora moved to 2.24 in F15 or even earlier.

Hi all,

I have an application that runs based on GTK2.22 on a Fedora 14 operating system.
My client wants to upgrade to Fedora 20 which is 64bit. I have not found any pre-compiled binaries of GTK2.22 for Fedora 20. And when I compile on the Fedora 20 machine using the GTK2.4 libraries for 64bit machines the application throws some serious memory errors.
What would my best course of action be here? Should I be looking for the GTK2.22 source code and recompiling it on the new 64bit machine?

Thanks!

The ideal course of action is to fix the memory problems in your application. Sounds like these memory problems may relate to the change of programming models from ILP32 (32-bit Linux) to LP64 (64-bit Linux) rather than issues due to moving from GTL2.2 to GTK2.4

Do an Internet search. There are many good guides to porting 32-bit applications to 64-bit platforms.

Alternatively, you could continue to build your application as a 32-bit application and install all the necessary 32-bit shared libraries on your clients system.

1 Like

fpmurphy I really like the idea of installing the 32 bit binaries on the clients system. I am just unsure how to do this. I have the binaries in rpm packages but am lost on how to install them and then link to them at runtime.....
The only libraries I need to install are:

gtk2-devel-2.22.0-2.fc.14.i686.rpm
proj-4.7.0-3.fc14.i686.rpm
proj-devel-4.7.0-3.fc14.i686.rpm

Forcing an RPM to install is a really bad idea. You are liable to play havoc with other gtk-using things. They may not even work, since they could easily depend on other old libraries you don't have either!

You could extract files by hand and put them somewhere under /opt/, then cause your application to load them via LD_LIBRARY_PATH="/opt/oldlibraries/" if you wanted to do it safely. I don't think they'll work, but you won't have destroyed your system.

We don't know what 32-bit versions you have already though. There may be some acceptable generic choices available in your emul package.

You could also compile statically, as suggested in the other thread.

I like the opt/oldlibraries idea. It would take me a bit of time to actually go and get all of these. Why wouln't it work do you think?

Because these old libraries likely depend on other old libraries which depend on other old libraries which depend on other old libraries. By the time you've tracked them all down you've basically copied your old PC over your new one.

And if they don't depend on old libraries, they probably should and are likely to crash instead of working, requiring you to track down the broken programs to override individually.