Practical Problems with distribution D projects
Adam D. Ruppe
destructionator at gmail.com
Wed Feb 26 09:25:32 PST 2014
On Tuesday, 25 February 2014 at 17:04:11 UTC, John Colvin wrote:
> If by "works for the end user" you mean that you go to a
> (different for every app) website
I always thought that was the sane way to do it, different
website for every app, though I loathe and despise chasing down
library dependencies.
static linking ftw
> other program that does the actual installation... then yes, I
> guess it does :)
Eh, my standard is dmd: get a zip and run the program with a
reasonable expectation that it will just work. I don't like
installers either.
> How can any of those be said to not work for the end user?
yum install php
gets php 5.1, but my other app needs 5.2
something something epel key whatever
yum update php
got php 5.2! .... but php-gd isn't in that repo, so it still is
5.1 and doesn't work.
wget http://php.net/downloads/whatever/php-5.2.tar.gz
tar zxf blah
cd blah
./configure
missing library X
yum install libx-devel
./configure
missing library Y
yum install liby-devel
no such package
*spend half an hour searching teh web*
yum install libwtf-devel # for some reason liby is in there....
./configure
missing library Z
yum install libz-devel
no such package
wget http://libz.org/downloads/libz.tar.gz
tar zxf
cd
./configure
missing library
You get the idea. finally get that working
cd php
./configure
library Z is version 3.1 but php requries 2.8
here we go again
*six hours later*
OH NO I FORGOT TO ADD --enable-gd TO CONFIGURE :-( :-( :-( here
we go again
./configure --enable-gd --enable-whatever-else ....
<snip>
sudo make install
$ php
Segmentation fault
AAaaaAaaAaaaAaaRrrrReGGGHHhhhhGH. OK, I admit, I'm combining two
different horror stories into one here, a php one and a recurring
hassle I've had with gtk, but still, the point stands.
> It's really very very simple and that's without even
> discussing the GUIs for the point-and-clickers.
When it works, it is great, when it doesn't, you're in a world of
pain. Getting into the repo can be a pain too, so can compiling
everything.
On Windows, you just compile on your box and it tends to work on
others. On Linux, you need a dozen different distros installed to
build the compatible binaries to package...
More information about the Digitalmars-d
mailing list