So, I'm playing whack-a-mole on the work dev system. I'd like to test
something. (perl-5.10.1-RC1). I don't have root, and I don't have the dev
packages installed. This is how it should be. So, no problem, I'll just build
the libraries I need to build the perl modules I need.

(Various fun and games involving the fact that I want to build *static*
libraries, but -fPIC. All the world is not a Vax, er i386, and so here on
x86_64, I can't like non PIC code into a shared object. Solved, eventually)

Enter rrdtool.

It refuses to build. It wants pango.
I get pango. I build pango.
It refuses to build. It wants pango with cairo. cairo is an optional part of
pango. Nothing tells me this.
I get cairo. It refuses to build. It needs a fond library.
By design, there is no X on this machine, so I get Freetype.
cairo builds
pango builds
but rrdtool refuses to build, because pango didn't build with cairo.
Eh?
watch the config.
It believes that my cairo is broken.
Specifically it can't link against cairo.
I initially misdiagnose the problem as confusion between 32 and 64 bit
libraries. (Gah. I don't know why this system isn't 64 bit only, but that's
a question for our systems team)

Eventually, I nail that problem.

Khaaaaaaaaaaaaaaaaaaaaaaan.

Fucking Linux weenies. "autoconf, libtool" are not enough.
You need to actually understand how to use them.

$ pkg-config --libs-only-l cairo
-lcairo
$

No, THAT'S NOT RIGHT. It depends on other libraries. It's not a shared
object. (I built static. I have my reasons). So I edit the package config
config for cairo to be *correct*.

But that doesn't work. I need to also fix the bug in the autoconfig script:

-LIBS="-lcairo  $LIBS"
+LIBS="`pkg-config --libs-only-l cairo`  $LIBS"

[repeat a few times]


Finally, I can build rrdtool.

[oh. I forget pixman. Something needed pixman]


Although I'm not there *yet*, as it too doesn't understand that -lrrd isn't
going to work, so I can't yet build the perl extension.


Kill them.
Kill them all.

Nicholas Clark

PS If they're reading this - no, this isn't a bug report. I don't care.
   If you're not capable of making gnome terminal save state, I'm not
   convinced that you are actually any good at this "software" malarky.
   Don't believe me - try opening two, changing the font size, and the terminal
   encoding. Now shut down and restart. One comes back right, one does not.

Reply via email to