[Zope3-Users] Re: zc.buildout and easy_install.pth

Philipp von Weitershausen philipp at weitershausen.de
Thu Jul 10 23:58:50 EDT 2008


Chris Stoyles wrote:
> I have started developing a Zope3 application, I created a virtualenv
> and then used zopeproject to create the skeleton of my application. I
> then checked all of that into subversion so that another developer
> could check out the app and run a buildout and setup their own
> environment with the packages they need.
> 
> The issue I am having is that when buildout runs, it installs all of
> the eggs I need into site-packages,

That's not really how zc.buildout works. buildout-based sandboxes are 
isolated from each other, eggs are either installed within the sandbox 
itself or into a central eggs location, but never into site-packages 
(unless you tell zc.buildout to do this, but why would you?).

> however the easy_install.pth file
> is not updated with references to these.

Right. zc.buildout isn't easy_install.

> This means that when I launch
> the python interpreter, the packages which have been installed by
> buildout are not visible.

That's exactly intended. Your Python installation hasn't been affected 
at all.

> The [project]-ctl and [project]-debug
> scripts to start zope are configured with the correct links to these
> packages however.

Indeed, because they have been generated by zc.buildout.

> For example, if I fire up python2.4 after running a fresh buildout,
> and try the following I get an import error:
> "from persistent import Persistent"
> 
> How can I make sure that buildout installs dependencies for the whole
> virtualenv and not just for the zope instance?

You don't. The point of zc.buildout is to have isolated sandboxes. It 
will never taint the global Python installation (in this case, your 
virtualenv is the global one to zc.buildout).



More information about the Zope3-users mailing list