2017-11-27 2 views
5

Unityビルドプロセスの一環として、Unity IDEによって生成されたCソースファイルのディレクトリをiOS XCodeプロジェクトにドラッグアンドドロップします。 「フォルダ参照の作成」を使用するときに、ヘッダファイルがコンパイラによって認識されないように見えるため、XCodeにファイルの「グループを作成」させてください。コンパイルのためにソースファイルのディレクトリをXcodeプロジェクトに追加するスクリプトは可能ですか?

スクリプトを作成する方法があるのだろうかと思うのですが、そのたびに手動でディレクトリをXCodeに手動でドラッグする必要はありません。 「ファイルのコピー」ビルドフェーズを追加することは、「フォルダ参照の作成」を選択した場合にのみ有効です。 「グループの作成」を選択すると、「ファイルのコピー」セクションは空のままです。これはXcodeのバグですか、何か間違っていますか?私はXCode 9.1を使用しています。

Appleは、ソースファイルのディレクトリにコピーするのではなく、フレームワークを作成することを推奨しています。私たちがそれをすることができない理由は、Unityビルドプロセスに依存しているために、Cソースファイルがたくさんあるからです。ありがとう!

+0

は、使用可能な操作の完全なリストについては、このリンクを参照してください。とにかく、理由を言わずに投票することは、あまり建設的ではありません! –

+2

おそらく有効な質問ですが、不明な質問が少しあります。コンパイルするファイルを追加するのが目標ですか?または、これらのリソースファイルまたはその両方です。それはコンパイルするファイルのように思えます。そして、あなたはそれ以外のXcodeを使用したいと思っていますか(つまり、あなたが話しているこのドラッグ・アンド・ドロップの範囲から任意のファイルを追加しますか?)。なぜそのような必要性が存在するのですか(すなわち、ファイルがあなたが必要とするほど大きく変わるのはなぜですか?)なぜなら、それは私にビルドプロセスを疑ってしまうからです。 –

+0

これはコンパイル時に存在する必要のあるCソースファイルです。これとは独立してXCodeプロジェクトをまだ変更する必要があります。これらのCソースファイルは、新しいUnityビルドを作成するたびに変更されます。 –

答えて

0

Xcodeはリソースファイルを追加するスクリプトすることが可能になりますビルド段階(Build Phases)タブを使用してプロジェクトファイルに画像などの画像を表示することはできますが、コンパイル時に認識する必要のあるソースコードファイルでは機能しません。幸いにも、私はこれを行うことを可能にしてくれるすばらしいコミュニティ開発のPythonスクリプトに出くわしました。このスクリプトでは

https://github.com/kronenthaler/mod-pbxproj

我々は、ファイルの追加や削除など、プロジェクトファイルへの変更のすべての種類を作ることができます。私は、これは有効な質問だと思う

https://github.com/kronenthaler/mod-pbxproj/wiki

1

Xcodeでは、アプリケーションターゲットを選択するときに、[ビルド段階]タブでビルドプロセスを管理できます。これらのタスクは、いくつかのフェーズで別途指定されている場合を除いて、アプリの各ビルドで実行されます(たとえば、アプリケーションの初回インストール時にのみフェーズを実行することができます)。

+ボタンをクリックすると、選択したファイルをアプリにコピーする「ファイルフェーズをコピー」を追加できます。ファイルを追加するときに、追加されたフォルダがグループまたはフォルダ参照を作成するかどうかを選択できます。

「スクリプトの実行」を追加して好きなことをするためのbashコードを書くことも、さらに複雑な作業を行う外部スクリプトを実行することもできます。

+1

「ファイルのコピー」ビルドフェーズを追加するのは、「フォルダ参照の作成」を選択した場合のみですが、フォルダ参照がソース参照ファイルに含まれているとコンパイラが認識しないため、グループではなくむしろ。 「グループの作成」を選択すると、「ファイルのコピー」セクションは空のままです。これはXcodeのバグですか?私はXCode 9.1を使用しています。 –

+1

"スクリプトフェーズの実行"アプローチに関しては、この質問に対する答えのサンプルスクリプトを見つけることができましたが、画像やデータなどのリソースを追加するためにのみ機能するようです。コンパイル時にxcodeプロジェクトのソースファイルをインクルードするためのサンプルスクリプトを提供できますか? https://stackoverflow.com/questions/1371351/add-files-to-an-xcode-project-from-a-script –

+1

具体的な例はありませんが、リソースに対して機能する場合は比較的簡単に作成する必要がありますファイルの種類を処理します。 Xcodeプロジェクトで空の参照フォルダを作成し、ビルドステップでスクリプトを使用してファイルをコピーすることができます。ただし、コピーしたファイルをコンパイルする場合は、この段階を「コンパイル元」の上に配置する必要があります(フェーズをドラッグして並べ替えることができます)。これは、スクリプトのフェーズタイプのコピーと実行の両方に適用されます – Artal

1

xcode-> Phases->をクリックします(+)ボタンを構築する - >新規ファイルのコピーフェーズ/新スクリプトの実行フェーズ

enter image description here

enter image description here

+0

この回答を詳しく教えてもらえますか?私はスクリプトを呼び出す方法を知っていますが、コンパイルのためにソースファイルをXcodeプロジェクトにコピーするようにそのスクリプトを書く方法が不明です。 rb-appscriptはもはやXcodeでサポートされていないようです。たぶん、あなたはどのスクリプトを構想しているのかを精緻化することができますか? –

+0

私は前に以下のスクリプトを追加したことがあります。 、<< bash "$ {BUILT_PRODUCTS_DIR}/$ {FRAMEWORKS_FOLDER_PATH} /Realm.framework/strip-frameworks.sh" >> –

+0

このスクリプトはRealmフレームワークのフレームワークを取り除くためのものですが、コピーに関する私の質問には当てはまりませんコンパイルのためのソースファイル。 –

関連する問題