On 01/21/2014 05:09 PM, Gene Heskett wrote:
On Tuesday 21 January 2014 11:50:12 Filipe Coelho did opine:

On 01/21/2014 04:40 PM, Philipp Überbacher wrote:
On Tue, 21 Jan 2014 05:55:04 +0000

Filipe Coelho <falktx@gmail.com> wrote:
Hi there everyone, specially developers.

I think we should stop assuming releasing source code is enough.
[GNU/] Linux is getting more user friendly, and most users are not
able to compile software,
plus some distributions make it specially hard (debian, ubuntu,
fedora, opensuse) by having the libs installed but not the headers.

Releasing software on windows or mac, even open-source, *always*
comes in a binary,
and most users come from there.
Hi Filipe,

I do think that releasing source code is enough.
What is more important than binaries is to have a sane and properly
configured build system. By that I mean standard tools like Makefiles,
waf, scons, CMake or whatever is used nowadays with a sane standard
configuration and the necessary switches to account for the
differences between the distributions.

I mean this in contrast to half-arsed and ad-hoc solutions. Just
yesterday I spent the whole evening unsuccessfully trying to build a
piece of software that uses a half-working CMake configuration
combined with binary blobs of dependencies and a bunch of
distro-specific shell scripts. The more I tried to fix it, the worse
it got.

Or take LuaAV, a piece of software I've tried to build twice during
the last few years, unsuccessfully. They have a ubuntu-specific shell
script to install the dependencies and a custom lua script to build.

Stuff like that sucks, it sucks who just want to give it a shot, it
sucks for packagers, and it sucks for people who want to contribute. A
binary package would only help the first group, and that is assuming
it works without problems on any system.
This point is exactly why I think binaries are needed.
IMO, no.  Binaries ALWAYS turn out to have been built on some system 
needing some obscure library that isn't available on the system you are 
running.  So, wanting to try it, one wastes several hours downloading and 
trying to build the missing dependencies until one finally realizes that on 
the distro you are using, its never going to happen.  So please, give us a 
tarball of the source, with enough tools to build it from scratch so it 
does have a snowballs chance in hell of actually running on our system.

If it won't build on a 4 year old ubuntu LTS using nothing but the build-
essentials tools, the chances of its building anyplace but on your home 
machine aren't too measurable.  Give us a source only tarball that builds 
there, and you will have around half the bases covered.

That's why I want to make a developer-oriented tutorial about this.
It will explain how to get gcc4.8 in an old Ubuntu 10.04 chroot, together with a few static libs as well.
(It's the same method I'm using for building generic debian packages)

I've been using this for my own software binaries and the only complaint I received was about a CentOS user (it required qt >= 4.6, which he didn't have).