4

I'm interested in installing a program called Grenchman on Arch Linux. Unfortuantely, it only has binaries in "Debian Wheezy", "Debian Jessie", and "Fedora":

Debian Wheezy [ sha1 | sig ]

Debian Jessie, Ubuntu 12.04, 12.10, and 13.04 [ sha1 | sig ]

Fedora (tested on 19) [ sha1 | sig ]

Mac OS X [ sha1 | sig ]

However, I'm running Arch Linux. In situations like these, which binary should I grab?

2
2

You can try, but with anything complicated there's a good chance that programs compiled for distribution A won't run on distribution B because they require different sets of library versions.

The easiest way to avoid getting trapped into library dependency hell is to let distributions do it for you. You have Debian packages, so install Debian, and run just that one program in Debian. Have Debian in a chroot; all it'll do is occupy a few GB of disk space ($2 worth or so of SSD gives you a Debian installation with lots of libraries).

I wrote a guide on installing a Debian/Ubuntu version in a chroot in another Debian/Ubuntu version. Arch Linux also has packages with schroot (the tool for setting up a chroot environment) and debootstrap (the tool for installing Debian in a directory).

Now you can run schroot -c wheezy (where wheezy is the nickname you gave to the schroot) to get an environment where the programs are from Debian but your home directory is your usual one.

1
  • 1
    Trading a a few gigs of space for a mini Debian install is a fascinating solution to this problem. – George Jan 22 '16 at 5:30
1

Binaries are usually built against a broad range of shared libraries, and with specific path and other configuration settings unique to each distribution. It's unlikely that binaries from one distribution will simply run on another, unless they're very simple and highly self contained.

You would normally grab the original source files, and build them on Arch Linux using whatever standard process Arch Linux has for that.

You could do it as a one-off, so download the source, and use various utilities (configure, make, gcc, etc.) to build it, or you could follow the Arch Build System which is the standard way of building new packages from scratch for Arch.

1

Worth checking out the script name debtap that automates a manual installation of an extracted deb package to Arch. It's simples as:

# debtap package.deb

Additionally, it can also create a PKGBUILD file and it's available in AUR as well.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.