1

必要に応じてソースから psycopg2 の卵と postgres をインストールするビルドアウト構成を作成しようとしています:

parts =
    ...
    postgre
    psycopg2
    ...

[postgre]
recipe = hexagonit.recipe.cmmi
url = ftp://ftp3.ua.postgresql.org/pub/mirrors/postgresql/source/v9.0.0/postgresql-9.0.0.tar.gz
configure-options =
    --without-readline

[psycopg2]
recipe = zc.recipe.egg:custom
egg = psycopg2
include-dirs =
    ${postgre:location}/include
library-dirs =
    ${postgre:location}/lib
rpath =
    ${postgre:location}/lib

問題は、ユーザーが既に postgresql をインストールしている場合でも、常にソースから postgresql をビルドすることです。

ユーザーがpsycopg2をビルドするために必要なものをすべて持っているかどうかを確認するようにbuildoutに指示するにはどうすればよいですか?

4

1 に答える 1

2

あなたはそれをすることができます、しかしあなたはそのチェックをするためにあなた自身のレシピを作らなければならないでしょう。あなたが望むことをする既存のレシピはありません。

別の方法は、2つのビルドアウト構成を持つことです。メインbuildout.cfgはpostgresqlが利用可能であると想定し、それを構築しようとはしません。

withpostgres.cfgは次のようになります。

[buildout]
parts +=
    postgre
    psycopg2

[postgres]
... your existing one ...

[psycopg2]
... your existing one ...

ソースからビルドする必要があるユーザーは、を呼び出すことで2番目の構成を使用できますbin/buildout -c withpostres.cfg

それであなたの問題は解決しますか?

于 2010-10-26T18:03:52.640 に答える