Xcode の暗黙的な依存関係チェックと静的ライブラリで問題が発生しました。これは Xcode のバグであると考えられます (そのように報告されています)。他の誰かがそれについて何かアイデアを持っている場合に備えて、ここで取り上げます。簡単に言うと、アプリケーションが静的ライブラリに依存していて、ライブラリのコンポーネントであるソース ファイルが変更された場合、Xcode はライブラリを再構築しますが、アプリケーションを再リンクしないため、変更はアプリケーションに表示されません。
より具体的には、アプリケーションプロジェクトと静的ライブラリプロジェクトを含むワークスペースがあり、アプリケーションがライブラリ内の関数を呼び出します (結果はアプリケーションで表示されます: たとえば、関数はラベルに表示されるテキストを返しますアプリケーション)。静的ライブラリは、アプリケーション ターゲットの "Link Binary with Libraries" ビルド フェーズに含まれています。最初からビルドすると、ライブラリが最初にビルドされ、次にアプリケーションが期待どおりにビルドされます (つまり、Xcode が依存関係を検出しました)。
ここで、ライブラリ ソース ファイルのメッセージ テキストを変更してから [ビルドして実行] ボタンをクリックすると、Xcode はライブラリを正しく再ビルドしますが、アプリケーションの再リンクに失敗するため、アプリケーションを実行すると、変更されていないメッセージ テキストは次のようになります。表示されます。
Mac OS X 10.8.2 で Xcode 4.5.1 を実行しています。私が報告したシナリオでは、アプリケーションは iOS シングルビュー アプリケーションであり、呼び出されるスタティック ライブラリ関数はたまたま C++ で実装されています。
現在、クリーニングと再構築以外の回避策はありません。他の誰かがこれを見たことがありますか、それとも他の洞察がありますか? 前もって感謝します。