[Zope] Re: My Sad Tale Of Woe

Paul Winkler pw_lists at slinkp.com
Thu Nov 30 09:59:04 EST 2006


On Thu, Nov 30, 2006 at 01:04:48AM -0800, Nancy Donnelly wrote:
> Okay, yahooing around I found I have to set the path. But I still get this error:
> 
> root at server167:zope/instance2/var (177) set PYTHONPATH=/usr/local/zope/278/lib/python
> root at server167:zope/instance2/var (178) python /usr/local/zope/278/lib/python/ZODB/fsrecover.py Data.fs Data.fs.recover
> Traceback (most recent call last):
>   File "/usr/local/zope/278/lib/python/ZODB/fsrecover.py", line 80, in ?
>     import ZODB
> ImportError: No module named ZODB
> 
> The python is the correct one. I re-set python so that the one that comes up first in the path is the one Zope uses.

What shell are you using? That's not how you set an environment
variable in any of the bourne-style shells (sh, bash, ksh).
For those, you would use:

 export PYTHONPATH=/usr/local/zope/278/lib/python:$PYTHONPATH

And it's not how you set environment vars in tcsh either.
For that, you would use:

 setenv PYTHONPATH /usr/local/zope/278/lib/python:$PYTHONPATH

In both cases you would normally append the existing PYTHONPATH as
shown here, but that's not your current problem.

I'm not clear on what exactly "set" does in tcsh;
in bash it sets positional parameters, which isn't what you want:

pw at kermit ~ $ echo $FOO

pw at kermit ~ $ set FOO=bar
pw at kermit ~ $ echo $FOO

pw at kermit ~ $ echo $1
FOO=bar
pw at kermit ~ $ export FOO=bar
pw at kermit ~ $ echo $FOO
bar



-- 

Paul Winkler
http://www.slinkp.com


More information about the Zope mailing list