0

私はそのようなコマンドビルダーを持っています:

jsontar = Command("bundle.tar", bundleDir, "mkvgconf $SOURCE $TARGET")

mkvgconf はシェル スクリプトです $SOURCE はディレクトリへのパスです $TARGET はファイルへのパスです

Windows で実行しようとすると、SCons は vgmkconf を実行可能ファイルとして認識しません。

Google が登場: http://www.scons.org/wiki/UsingPkgConfigMsysShellScripts

このスクリプトを使用すると、SCons が認識して実行を試みる mkvgconf.cmd を作成できます。残念ながら、SCons は $SOURCE と $TARGET を Windows 文字列ではなく UNIX パス文字列として渡します。パス文字列が誤って解釈され、ビルドが失敗します。

質問 1: どうすれば SCons に私のシェル スクリプトを認識させることができますか?

質問 2: 質問 1 に解決策がない場合、パス名をビルド プラットフォーム用に正しくフォーマットするにはどうすればよいですか?

4

1 に答える 1

0

次のように置き換えることで、 cygwinを使用して bash スクリプトを実行できますmkvgconf $SOURCE $TARGET

C:\cygwin\bin\bash.exe -c "mkvgconf $SOURCE $TARGET"
于 2010-06-16T17:25:53.417 に答える