LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (http://www.linuxquestions.org/questions/linux-software-2/)
-   -   Audacious compiler can't find pango (http://www.linuxquestions.org/questions/linux-software-2/audacious-compiler-cant-find-pango-603537/)

gymnart 11-30-2007 11:44 AM

Audacious compiler can't find pango
 
Well, I went to compile Audacious but got an error message about the compiler not being able to find "pango".

Here are some of the lines from the config log:
Code:

configure:9688: checking for glib-2.0 >= 2.10.0 gtk+-2.0 >= 2.10.0 gthread-2.0 pango
configure:9708: result: no
configure:9733: error: Cannot find glib2/gtk2/pango

I'm running SuSE 10.0 and I do have pango installed and according to YaST, I do have the pango-devel (1.10.0-3) installed and gtk-devel (1.2.10-888) installed too. Also, according to YaST, I do have gtk2-devel installed, version 2.8.3-4.7 and no newer one is available.

Here is where pango is on my machine:
/etc/opt/gnome/pango
/opt/gnome/include/pango-1.0/pango
/opt/gnome/lib/pango
/usr/lib/perl5/vendor_perl/5.8.7/i586-linux-thread-multi/Gtk2/Pango

my glib-2.0 files are in:
/opt/gnome/include/glib-2.0
/opt/gnome/lib/glib-2.0
/opt/gnome/share/glib-2.0

gtk-2.0 is in:
/etc/opt/gnome/gtk-2.0
/opt/gnome/include/gtk-2.0
/opt/gnome/lib/gtk-2.0
/opt/gnome/share/gtk-2.0
/usr/lib/python2.4/site-packages/gtk-2.0
/var/opt/gnome/cache/gtk-2.0

Also, the .pc files that involve pango are in:
/opt/gnome/lib/pkgconfig and the folder /opt/gnome/lib is listed in the /etc/ld.so.conf file.

How can I solve this compiler problem?

reddazz 12-01-2007 04:49 AM

Audacious is looking for gtk2 >= 2.10, but you have 2.8. You either have to compile gtk2 2.10.x from source or look for openSUSE 10.0 rpms (if someone happened to create them).

gymnart 12-01-2007 11:40 AM

So far, I cannot find the latest gtk update for my system.
SuSE has abandoned me it seems.

berbae 12-01-2007 02:41 PM

Hi gymnart
With a distro like SUSE, officially, only security or serious bug updates are available for the packages in the distro release number, and only for two years after the official release date.
To get the latest or more recent versions of the packages it is necessary to upgrade the entire installation to the last SUSE release version.

Of course you can always compile the programs from source, but with SUSE, which is a binary rpm based distro, it is not practical.
In this case it is better to build new binary rpm files to install with YaST or the rpm command.
For that, the rpmbuild and the source rpm files (with the .src.rpm extension) are useful. Other threads were opened about that, you can search for them using the Search engine at the top of the screen at this site.

But I think, with SUSE, it is by far preferable to upgrade entirely the installation, at least after 2 years. And if you want to learn about using sources and compiling programs, I think it is better to use another distro which comes natively with that possibility (there are several of them like Gentoo, Slackware or Arch Linux or ...).
Greetings.

gymnart 12-07-2007 10:32 AM

For some packages, I have seen .src.rpm. Will those work on any SuSE x.x (whatever#.whatever#) system?

berbae 12-07-2007 04:47 PM

For the Audacious program, you have the Packman packages :
binary rpm files for openSUSE 10.2 and 10.3
one audacious-1.4.4-0.pm.1.src.rpm source rpm file.

I've looked in that source rpm file and it contains only :
audacious-1.4.4.tbz2 the source code
audacious.spec the specification file to build the rpm packages.

In the spec file there is no indication about an openSUSE release number.
So it should be usable with the 10.0 release.

You should satisfy first all the 'BuildRequires:' dependencies mentioned in the spec file.
And also the 'Requires: %{name}-plugins'
which means you need the audacious-plugins package.
You will have to build also that package using the same method, and seemingly, install them together.

For example for the Audacious build process :
Code:

rpm -ivh audacious-1.4.4-0.pm.1.src.rpm
cd /usr/src/packages/SPECS
rpmbuild -bb audacious.spec

You don't need to be root to do that, but only to install the packages after they have been built.

That should work in SUSE 10.0 and build SUSE rpm packages in '/usr/src/packages/RPMS' installable through YaST or the rpm command.

Have a good compiling time !

gymnart 12-09-2007 12:00 PM

Thank you so much, Berbae, I will try that out.

I looked at the src file with KPackage and in the architecture description part it said, x86_64. My system is just regular 32 bit.

I think I might need an updated version of gtk though. I might have to do this for a lot of the dependencies. My other worry is, of course, are the newer libraries compatible with the apps I have now?

btw, How did you get at the spec file in order to view it?

berbae 12-09-2007 04:37 PM

I had warned you :
Quote:

Of course you can always compile the programs from source, but with SUSE, which is a binary rpm based distro, it is not practical
I don't see any mention of the architecture in the source rpm file.
What "architecture description part" are you talking about?
The source rpm file is the one with the .src.rpm extension:
audacious-1.4.4-0.pm.1.src.rpm
It contains only two files:
audacious-1.4.4.tbz2
audacious.spec

Did you follow the way to build the package from my previous post?

After the installation of the .src.rpm package, you can view/edit the spec file with a text editor, for example:
cd /usr/src/packages/SPECS
vim audacious.spec

Effectively you're right, you need gtk2 >= 2.10 to compile audacious.

And it is not provided for SUSE 10.0 so you will have to build new packages, preferably using the same method (with rpmbuild).
As gtk2 comes with glib2, atk and pango, probably you will have to update these packages also.

As for the compatibility, gtk2 should be compatible with older version, so other packages using it should not be broken.

With perseverance it surely is possible to do what you try to do, but:

Are you sure you don't want to upgrade to openSUSE 10.3 ?

It seems easier and the upgrade is free of charge, so...

gymnart 12-09-2007 08:25 PM

Thank you.

I opened the src.rpm (the package name was audacious-1.4.4-0.pm.2.src.rpm - that is what was on the packman site) with kpackage and looked at the description and it gives, summary, version, group, size, etc and down where it says architecture it said x86_64.

Yeah, I'll have to think about upgrading the system. I guess I'm just worried that if something went wrong and didn't work out, I'd be "up a creek" with a system that is broken and I won't know how to go back to the version that worked good enough. I've upgraded some packages before and just about panicked because I didn't know how to fix things.

A friend of mine is a Linux user so I'll have to interview him about his experiences.

Has upgrading (so often) been an easy thing for you?

berbae 12-10-2007 04:19 AM

As the source rpm file contains only the tarball source code and a spec file, and the spec file doesn't mention anything about the architecture, I think the info given by kpackage is not pertinent there.
AFAIK it's the resulted binary package that is architecture dependent, not the source code.
You can see that the Packman site gives several binary rpm files for different architectures, but only one source rpm file, independent of architecture and SUSE release version.
So I don't think you should worry about that point.

Probably upgrading the entire system may not be always easy, but what you want to do neither is. So it's your choice.

Personally I agree with you about the pain to upgrade regularly (every two years may not be "so often" though), it is a reason why I chose to use another Linux distro which is a rolling release distro, based on binary packages but with the possibility to compile from source too.

I like this way of doing things, but SUSE is a good distro too, though not for "compiler geeks", from the user side at least.

See with your friend about what he thinks, and take your own decision about upgrading the entire system or individual packages inside your 10.0 release.
Greetings.

gymnart 12-10-2007 10:00 AM

What does "Rolling Release" mean? Updated often?

I just checked the FAQ and found this in the 2.6. "When installing a GTK+ application, configure reports that it can't find GTK. [GTK 2.x]" section:

"You have an old version of GTK installed somewhere. You should remove this old copy, but note that this may break applications that have been compiled against the old version."
-----
So, I guess I will pass on that after all and when I'm feeling brave enough, I might tackle upgrading the system.

Thank you for your kind help


All times are GMT -5. The time now is 03:28 PM.