[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to build RHEL software to run on Debian?



On Wed, Dec 28, 2005 at 05:31:16PM -0600, Matt England wrote:
> I'm a software developer, and I would like one set of software binaries 
> (applications, libraries) to be able to run across many Linux platforms, 
> including FedoraCore, Redhat Enterprise Linux, and Debian (much the same 
> way XAMPP -- http://www.apachefriends.org/en/xampp.html -- claims that its 
> one Linux binary distribution runs on all SuSE, Redhat, Mandrake, and 
> Debian).
> 
> What sort of things must I do as a developer to do this?
> 
Three different distributions: three different versions of libraries,
compilers and so on. Static linking may be one answer: a package
installer script which unpacks and builds a tar.gz on the distribution
natively may be another :(

> Should I carry as many of the dynamically-linked libraries around with my 
> distribution?  Should these include libc/glibc in my own distribution set?
> 
NO. Use the distribution's packaged libraries. 

> Anything else?
> 
Be aware that Red Hat and Debian have fractionally different init
scripts and run levels. A little reading should help clarify the
differences.

> Is this a worthwhile endeavor?  Have people tried this before?  Obviously 
> it appears to be a key point for XAMPP (per above) and I suspect many more 
> software sets.  It sure would be nice for my project to have one binary for 
> many systems--it really cuts down on my build-control logistics.
> 
Build for several different distributions in one machine by using
VMWare/QEmu / chroots? This saves machines, guarantees that you are 
running the builds on the same hardware and provides you with each
distributions versions of gcc/glibc/autoconf etc. etc.

Which RH EL are you targetting and which Fedora Core (that's potentially
two Red Hats and two or three Core's :( )

> I'm just getting started in this investigation.  I may be posting to 
> several different Linux communities (newsgroups, email lists, forums, 
> etc).   I started with the Debian community because I have a build 
> environment on RHEL, and am porting to Debian.
> 
A cautionary tale: even eminently good software, if it's not in the
mainstream and well packaged will fail. In 1996 or so, the best HTML editor
I'd come across was asWedit - East European programmer, free for
non-commercial use but with an odd licence for commercial purposes. The
gentleman even went so far as to package a .deb.  The last update to
anything was in 1999 - virtually every mirror which carried it is now
lost and the website no longer exists. Advasoft still apparently exists
in Hatch End in London - but with no product. The .deb is now
uninstallable. This, at least in part, because the owner wanted to keep
all packaging to himself. 

If the software you are suggesting is under an obscure commercial license, 
then it possibly can't go in Debian main - which means that many people 
won't run it automatically: if it's free (in Debian Free Software
Guidelines free), you stand a better chance. 

Find a Debian maintainer to work with you: ditto someone from OpenSUSE 
(or however its capitalized this month) - that way at least you have a 
collaborator to iron out local difficulties. 10% of packaging / library
placement oddities can mean more than 90% of work to remain cross
distribution compatible.

HTH,

Andy
>  Thanks for any help.
> 
> -Matt
> 
> ps: I am very familiar and have over a decade of experience with managing 
> software projects that make portable code across 8 different unix variants, 
> VMS, and several Windows flavors.  Therefore, I'd like this discussion to 
> focus primarily on how to make the *binaries* portable and not the _code_ 
> portable.  Thanks.
> 
> 
> -- 
> To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org 
> with a subject of "unsubscribe". Trouble? Contact 
> listmaster@lists.debian.org



Reply to: