0

Xcode 内からコマンドライン MPI プログラムを実行しようとしています。これには、プログラムを次のように実行する必要があります。

 /usr/bin/mpiexec -np 4 {my binary}

Xcode 4のドキュメントを使用xcodebuild -showBuildSettingsして、適切な変数を見つけるためのガイドとしてコマンドラインからスキームを編集しようとしています。mpiexec を実行し、次の引数を渡すスキームがあります。

-np 4 $CONFIGURATION_BUILD_DIR/$TARGET_NAME

の値を見ると、次のようになりますxcodebuild

/Users/<excluding full path>/MyProject/build/Debug/MyTarget

ただし、Xcode 内で実行すると、次のようになります。

build/Debug/MyTarget

これを次のようにプレフィックスします。

-np 2 ${PROJECT_DIR}/${TARGET_BUILD_DIR}/${TARGET_NAME}

パス名の最初のスペースまでのフルパスになり、それ以上は何もないため、スペースのエスケープに問題がある可能性があります。

これは、mpiexec が私のバイナリを見つけられるようにするのに十分ではありません。Xcode スキームと引数を使用してビルドされた実行可能ファイルの絶対パスを特定する適切な方法は何ですか?

4

1 に答える 1

1

私がこれを行うとうまくいきます:

 -np 2 "${PROJECT_DIR}/${TARGET_BUILD_DIR}/${TARGET_NAME}"

おそらく、パス内のスペースを避けるために二重引用符が必要だったのでしょうか?

誰かが適切な回答を投稿した場合に備えて、しばらくの間これを受け入れないままにします。これは私にとってハックのように感じます

于 2013-01-30T00:31:10.890 に答える