[GRASS5] links in installation

Glynn Clements glynn.clements at virgin.net
Wed Nov 20 01:47:28 EST 2002

John Harrop wrote:

> Could someone please help me figure out the meaning of high link counts 
> in the /usr/local/grass5/bin directory?  I'm used to link counts being 
> fairly low numbers, so I'm not sure why I'm getting link counts up 
> around 400 in the grass bin dir after an install.  The file sizes are 
> all equal as well, but much larger than what I would expect for a 
> symbolic link.

Almost everything in $GISBASE/bin is a hard link to
$GISBASE/etc/front.end. You should note that all of the "files" are
the same size as front.end; furthermore "ls -i" should indicate that
they are all the same inode.

Normally, the only files in the bin directory which *aren't* links to
front.end are tcltkgrass, nviz and r.agnps50.run.

> Is there a policy on where bin files are placed?  Should they be kept in 
> the etc/bin/cmd and parallel directories with an ln -s from grass5/bin?

Non-interactive programs go into etc/bin/cmd, while interactive
programs go into etc/bin/inter. The bin directory should contain a
similarly-named link (normally a hard link, although a symbolic link
may work) to etc/front.end. The links can be constructed automatically
using the "gmakelinks5" script (use the "-i" switch to update an
installed version).

Basically, front.end checks whether any command-line arguments were
given, and whether the corresponding programs exist in etc/bin/cmd
and/or etc/bin/inter.

If no arguments were given, front.end will run the "inter" version if
it exists, otherwise it will run the "cmd" version.

If any arguments were given, front.end will run the "cmd" version if
it exists, otherwise it will display an error message noting that
"This command must be run interactively".

Glynn Clements <glynn.clements at virgin.net>

More information about the grass-dev mailing list