«
»

Error when using old run/bin installers under Linux

February 25th, 2007 by George Notaras

I guess that every single *nix user, at least once, has run across files with the *.run or *.bin extensions. These scripts are usually software installers and are widely used to distribute, but not limited to, proprietary software to the Unix world. Examples are the popular NVidia or ATI display drivers for Linux and other operating systems, the Sun Java Runtime Environment etc. Recently, I encountered some issues when trying to use such installers.

But first, some information about these scripts (installers). These are created with the makeself shell script, which actually creates self-extractable tar.gz archives. When launched, the installer does an archive integrity check and then extracts the included software to the desired location and performs all the programmed actions in order to make the installed software functional within the operating system.

Recently, I had to install the SecureFTP ftp client for linux, but the script errored out with some strange messages like not being able to uncompress the archive or about not being able to verify the archive’s checksum or about wrong command line parameters used in some command calls internally. This had happened in the past too, when I wanted to install the good old game Unreal Tournament (1999) so to revive some good memories. ;-)

Here are some of the weird error messages:

tail: cannot open `+187' for reading: No such file or directory
gunzip: stdin: not in gzip format
Verifying archive integrity...tail: cannot open `+6' for reading: No such file or directory
Error in check sums 1237260170 2341625838

As stated at the makeself website, archives created with Makeself older than v2.1.2 were using an old syntax for the head and tail Unix commands and there are problems uncompressing the included software.

In order to resolve this issue and make the installer “assume” that you use an old GNU/Linux version, you should export the following environment variable before using the installer:

export _POSIX2_VERSION=199209

After you finish installing the software, delete that ENV variable:

unset _POSIX2_VERSION

It took me a significant amount of time to learn about this workaround and, basically, I discovered it while searching for the software that creates these self-installing archives.

Hope this tip helps someone out there.

The Error when using old run/bin installers under Linux by George Notaras, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License. Terms and conditions beyond the scope of this license may be available at www.g-loaded.eu.

Related Articles

Tags: , , , , ,

2 Responses to “Error when using old run/bin installers under Linux”

  1. James Carroll Says :

    Thanks so much for this info. I was banging my head against the wall trying to apply the patches to the old railroad tycoon II game from loki. What was really killing me was I remembered that I had done it in the past. Thanks again.

  2. George Notaras Says :

    James, I’m glad you found this information useful. I recall me banging my head as well while trying to install a game, Unreal Tournament, under Linux using the Loki installer.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight=""> <pre>