2009/11/23 Attila Oláh <span dir="ltr">&lt;<a href="mailto:attilaolah@gmail.com">attilaolah@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">PIL is known to have issues with buildout. Your problem is that it<br>
puts it&#39;s files in &lt;buildout&gt;/eggs/PIL-#.#.#-py#.#-##.egg/, whereas it<br>
should put them in &lt;buildout&gt;/eggs/PIL-#.#.#-py#.#-##.egg/PIL/.<br>
<br>
As a workaround, you could run buildout like this (or put this in a<br>
shell script):<br>
<br>
./bin/buildout -N &amp;&amp; mkdir `find eggs -iname PIL*.egg`/PIL &amp;&amp; mv `find<br>
eggs -iname PIL*.egg`/*.* `find eggs -iname PIL*.egg`/PIL<br>
<br>
I know it looks rather ugly. I don&#39;t know if there&#39;s a better solution though.<br></div></blockquote><div>It&#39;s ugly but the problem is rather that I&#39;d like to use buildout to avoid such things (it&#39;s my first buildout config). But thanks.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">
<br>
Why would you need 1.1.6? 1.1.7 should be a bugfix release anyway...</div></blockquote><div>Because 1.1.6 from repoze has correct structure. It has PIL in its egg.</div><div><br></div><div>This config installs both PILs 1.1.6 and 1.1.7:</div>
<div><br></div><div>[buildout]<br>parts = PIL django omlette cms-media<br><br>[PIL]<br>recipe = zc.recipe.egg<br>eggs = PIL==1.1.6<br>find-links = <a href="http://dist.repoze.org">http://dist.repoze.org</a><br><br>[django]<br>
recipe = djangorecipe<br>version = 1.1<br>project = project<br>eggs =<br>     PIL<br>     psycopg2<br>     south<br>     django-reversion<br>     django-cms<br>wsgi = true<br>settings = production<br><br>[omlette]<br>recipe = collective.recipe.omelette<br>
eggs = ${django:eggs}<br><br>[cms-media]<br>recipe = svetlyak40wt.recipe.symlinks<br>path = project/media<br>files =<br>    ${buildout:parts-directory}/omlette/cms/media/cms cms<br></div><div><br></div><div><br></div><div>
but this work as expected:</div><div><br></div><div>[buildout]<br>parts = PIL django omlette cms-media<br><br>[PIL]<br>recipe = zc.recipe.egg<br>eggs = PIL==1.1.6<br>find-links = <a href="http://dist.repoze.org">http://dist.repoze.org</a><br>
<br>[django]<br>recipe = djangorecipe<br>version = 1.1<br>project = project<br>eggs =<br>     PIL == 1.1.6<br>     psycopg2<br>     south<br>     django-reversion<br>     django-cms<br>wsgi = true<br>settings = production<br>
<br>[omlette]<br>recipe = collective.recipe.omelette<br>eggs = ${django:eggs}<br><br>[cms-media]<br>recipe = svetlyak40wt.recipe.symlinks<br>path = project/media<br>files =<br>    ${buildout:parts-directory}/omlette/cms/media/cms cms<br>
</div><div><br></div><div>So it&#39;s solved. Buildout was installing two different versions of PIL, one for PIL part (1.1.6) and another one for django part (1.1.7). After I added specific version to PIL in django it works :D</div>
<div><br></div><div>One more question. Why after I added eggs = psycopg2 just after [buildout] buildout reported that it is omitting unused eggs in [buildout]? I had to move psycopg2 to eggs in djangopart.</div><div><br></div>
<div>Jakub</div>