iPhone アプリでグラフを使用したいと考えています。ソース コード Core-Plot をダウンロードしましたが、実行しようとするとエラーが発生します。
clang: error: -Z-reserved-lib-stdc++: 'linker' input unused when '-c' is present
このエラーの意味や解決方法を教えてください。
依存プロジェクトのインストール Cocoa Touch アプリケーションでは Mac と同じようにフレームワークを使用できないため、iPhone アプリケーション内に Core Plot を含める方法は少し異なります。
まず、CorePlot-CocoaTouch.xcodeproj ファイルを iPhone アプリケーションの Xcode プロジェクトにドラッグします。左側のリストにプロジェクト ナビゲーターを表示し、プロジェクトをクリックします。
表示される「ターゲット」ソース リストの下からアプリケーション ターゲットを選択します。[Build Phases] タブをクリックし、[Target Dependencies] グループを展開します。プラス ボタンをクリックし、CorePlot-CocoaTouch ライブラリを選択して、[追加] をクリックします。これにより、Core Plot ライブラリがアプリケーションでビルドされることが保証されます。
Core Plot は iPhone 用のスタティック ライブラリとしてビルドされるため、libCorePlot-CocoaTouch.a スタティック ライブラリを CorePlot-CocoaTouch.xcodeproj グループの下から、アプリケーション ターゲットの「Build Phases" あなたがいたグループです。
また、正しいヘッダーの場所を指す必要があります。Build 設定で、Header Search Paths をアプリケーションから Core Plot ソース ツリー内の framework/ サブディレクトリへの相対パスに設定します。このヘッダー検索パスを必ず再帰的にしてください。-ObjC を Other Linker Flags にも追加する必要があります (Xcode 4.2 の時点では、-all_load は必要ないようですが、古い Xcode バージョンでは必要になる場合があります)。
Core Plot は Core Animation に基づいているため、QuartzCore フレームワークをアプリケーション プロジェクトにまだ追加していない場合は追加してください。
最後に、プロジェクト内の適切なソース ファイルに次の行を挿入することで、すべての Core Plot クラスとデータ型をインポートできるはずです。