[Date Prev] [Date Next] [Thread Prev] [Thread Next] Date Index Thread Index Search archive:
Date:Mon May 23 10:56:08 2001 
Subject:Re: [beginner] how to compile a pop11 program? 
From:A . Sloman 
Volume-ID:1010523.03 

Steve,

| > popc -e junk junk.p
| > ;;; MISHAP - SAVED IMAGE NOT FOUND
| > ;;; INVOLVING:  'e.psv'
| > ;;; DOING
|
| That's strange.  I can produce that error message with the command
|
| pop11 -e junk junk.p

The problem is that popc is a link to basepop11 as is pop11, etc. in
	$popsys

So if you give a command of the form

	popc ....

then that will be equivalent to

	basepop11 ....

UNLESS you have defined the environment variable $pop_popc to tell
basepop11 that it should do something different, e.g. run a
saved image.

By default several environment variables are set up when you source

	$usepop/pop/com/poplog
or
	$usepop/pop/com/poplog.sh

See also these, which are invoked by the above
	$popsys/popenv
	$popsys/popenv.sh

In the files
	$usepop/pop/com/popenv
	$usepop/pop/com/popenv.sh

which are also invoked by the poplog and poplog.sh files, respectively,
you'll find that $pop_popc is set to have the value:
	
	"+$popsys/popc.psv"

This means that the command

	popc ...

is equivalent to

	basepop11 +$popsys/popc.psv ....

That longer version can be typed in explicitly instead, if the
environment variable pop_popc has not been set.

But that is probably an indication that other environment variables have
not yet been set, so something else may fail (e.g. requiring
$popexternlib ??)

We have previously had lengthy discussions in this forum on the need to
replace the mechanism that depends on all the scripts defining
environment variables before you can run an executable.

It is not conceptually difficult to think of ways of replacing this with
a mechanism that reads some startup files instead, e.g.

in the system
	$usepop/pop/poplog_defaults

or user files:
	~/.poplog_defaults

The question is (a) what would be a really good way to do this and
(b) finding the time to do it.

I think Steve Leach may already have thought about this in great detail.

Aaron