次のように私は、環境中に埋め込まれたスペースで変数を提供する場合:zc.recipe.cmmiのバグ?
environment =
CPPFLAGS="-D_GNU_SOURCE -I${openssl:location}/include"
私はこのエラーを取得する:
とValueError:辞書更新シーケンス要素#1は、長さ1を持っています。 2が必要です
これはバグですか?回避策はありますか?
次のように私は、環境中に埋め込まれたスペースで変数を提供する場合:zc.recipe.cmmiのバグ?
environment =
CPPFLAGS="-D_GNU_SOURCE -I${openssl:location}/include"
私はこのエラーを取得する:
とValueError:辞書更新シーケンス要素#1は、長さ1を持っています。 2が必要です
これはバグですか?回避策はありますか?
これはzc.recipe.cmmiの欠点です。スペースなしで環境変数を処理することはできません。 bugtracker for the recipeにはパッチがあります。
現在のところ、このパッチの適用以外の回避策はありません。あなたも(未試行)このケースで動作するはずcollective.recipe.patch
レシピを使用して、既存の卵にパッチを適用することができます。
[buildout]
parts =
patch-z.r.cmmi
yourcmmipart
[patch-z.r.cmmi]
recipe = collective.recipe.patch
egg = zc.recipe.cmmi <= 1.3.4
patch = patches/environ_section_trunk_r101308.patch
これは、あなたがダウンロードしたバグのパッチでpatches
suddirectoryを前提としています。あなたのcmmiパーツがそのパーツの前に実行される前に、パーツをリストする必要があります(あるいは、依存関係を作ることもできます)。
感謝。代わりにplone.recipe.commandを使うことにしました。そしてconfigure、make、makeを手作業でインストールしました。うまくいった!私は再びzc.recipe.cmmiを使用するとは思わない。 – sureshvv
zc.recipe.cmmiは、plone.recipe.commandで再現するのが難しいいくつかの素晴らしい共有ビルド管理を行います。 –
代替ソリューションは、ちょうどそのようにレシピの「のconfigureコマンド」を乱用することです:
[buildthis]
recipe = zc.recipe.cmmi
...
configure-command =
export CPPFLAGS="-D_GNU_SOURCE -I${openssl:location}/include";
./configure
https://bugs.launchpad.net/zc.buildout/+bug/393333 – SteveM