Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

gnat (29)

  (email not shown publicly)

Journal of gnat (29)

Monday April 28, 2003
07:17 AM

[gripe] Smug Installers

[ #11885 ]
Nothing pisses me off like a software package that ignores --prefix. Perl 5.8.0's install does it. Apache 1.27's install does it. Why? What possibly makes them think that they know better than I do? If I want to install a piece of software in frufru land far away from every other piece of software I have, why is this a bad thing? Why must the small-minded writer of installation scripts say "oh, but on your platform configuration goes in /etc/httpd" or "on your platform, modules go in /Library/Perl" and override my explicit desire to keep their software miles away from my currently-functioning system?

All questions rhetorical, of course. I'm whining. I'm just as frustrated with myself for having the unreasonable expectation that --prefix controls where everything is installed (you know, like the documentation says). I was forewarned with Perl and had a backup of all the relevant files. I didn't do this with Apache and I no longer have a virgin Apache setup. This wouldn't be a problem ordinarily (it left httpd.conf and other important files alone) but I have an incomplete install--it built me an httpd that looks for files in /usr/local/apache/conf that it installed in /etc/httpd. How could this conceivably be considered correct behaviour?

This is why installing software on Mac OS X is such a clusterfuck. Even software that builds thinks it can shit all over your delicately-balanced system. "Hey, you're on Mac OS X!" it bellows inconsiderately, like a drunk loudly slurring "Hey, my sister's got your picture on her wall at the Ministry of Defence. She says you're the best spy they got!" to James Bond as he's tailing a KGB agent (or these days, an Axis-of-Evil ecoterrorist). The installer continues, however, to say "You're on Mac OS X, you install shit in fucked-up places! I know you can't handle commandlines so here, let me do what you didn't say and STUFF some MORE shit UP THERE" (the last half-dozen words accompanied by grunts as it dumps on your filesystem).

Mumble grumble.


The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • If sh Configure -Dprefix=/my/perl doesn't install everything under /my/perl, that's a bug, please perlbug it. I use this option often, installing perl as a non-root user (for paranoid reasons). Moreover, in the company I work for, I've standardized our product-supplied perl to be installed under an ad-hoc location, to avoid conflicts with the OS's supplied perl (we have to be very portable across different Unices).
    • You also need to specify it -Uinstallusrbinperl or somesuch if you are root!


    • the problem i've had with 5.8 in particular is that the darwin hints use prefix for a couple of paths but make up other paths along the way. so the binary ends up in /opt/magicpants/bin but the modules still end up in /Library/Perl or whereever. getting perl to install by itself someplace where it wont touch the stock 5.6.0 that comes with os was a nightmare.

      this is why i have a tarball of that build that i carry around so i never have to do that again.

      for a contrast there, Configure on linux uses prefi
      • Yes, that's exactly the problem I was talking about with 5.8.0--randomly stuffing shit into /Library is very uncool. I too saved my build, but as a .pkg.dmg [].


        • I just comment out a few lines in the darwin hints file. Works wunderbarly. But yes, perl should allow overriding of the hints file.
    • Yahhhhrsh? :-)