IRC チャットをサポートする iOS アプリを構築しようとしています。実装が非常に簡単で、Cocoa でこれを行う方法の例もある次のライブラリを見つけました。
sourceforge の libircclient (v1.0) GitHub の IRCClient by Jonasschnelli (v1.3)
(申し訳ありませんが、2 つ以上のハイパーリンクを追加することはできません)
ただし、プロジェクトでこれらのエラーが発生し続けます。
アーキテクチャ i386 の未定義シンボル: "_OBJC_CLASS_$_IRCClientSession"、参照元: ViewController.o ld の objc-class-ref: アーキテクチャ i386 のシンボルが見つかりません
私は実装のためにこの答えに従いました:
iPhone - ARM アーキテクチャ用にビルドするときにコンパイラが一部のインクルードを検出できないのはなぜですか?
説明されているように、実際に iOS6 用にビルドする Cocoa 静的ライブラリ プロジェクトを作成しました。しかし、単純な 1 ビュー iOS プロジェクトで Cocoa サンプル ファイルを cocoa 静的ライブラリと組み合わせて使用しようとすると、エラーがポップアップ表示されます。したがって、私のプロジェクトには次のファイルがあります。
質問に書いてある通り
- libircclient.c
- included the ../include folder as header search which contains the .h files.
cocoa の例から、cocoa.h へのインクルードを削除します
- IRCClientSessionDelegate.h
- IRCClientSession.h
- IRCClientChannelDelegate.h
- IRCClientChannel.h
ViewController.m に次の行を追加します (これらの行がないと、エラーなしでビルドされます)。
#import "IRCClientSession.h"
IRCClientSession * session = [[IRCClientSession alloc] init];
次に、2 番目と 3 番目の回答を試しました。armv7 と i386 の makefile を調整します (-arch armv7)。ただし、同じ i386 エラーが表示されます。
私はこれらのコマンドが得意ではなく、エラーが実際に何を言っているのかわかりません。私が理解しているように、MAC 64bit SDK に対してではなく、iOS SDK に対して C ファイルをビルドする必要があります。xcodeスタティックライブラリでそれをやったと思っていましたが、実際に使用した後、i386エラーが発生しました。i386 はシミュレータ用だと思います。ただし、デバイスにビルドすると、同じ i386 エラーが発生します。
どんな助けでも大歓迎です!
[編集: サンプル フォルダーで make を行っていたので、make エラーを削除しました。src フォルダーでの make は機能します]