iPhone アプリで SmallSockets を使用して、Windows ホスト (サーバー) への TCP ソケット接続を確立しようとしています。コンパイルすると、次のエラーが発生します。
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_Socket", referenced from:
objc-class-ref in SmallSocketsTestViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
具体的には、赤で示したのは次の行です。
"_OBJC_CLASS_$_Socket", referenced from:
clang: error: linker command failed with exit code 1 (use -v to see invocation)
私は iOS 開発は初めてで、ソケット プログラミングもまったく初めてなので、これらのエラーに関してはかなり迷っています。どんな助けでも大歓迎です。ありがとう!
接続を確立するために使用しているコードは次のとおりです。
-(IBAction)btnConnect:(id)sender
{
Socket *socket;
int port = 11005;
NSString *host = @"19.5.8.63";
socket = [Socket socket];
@try
{
NSMutableData *data;
[socket connectToHostName:host port:port];
[socket readData:data];
// [socket writeString:@"Hello World!"];
//** Connection was successful **//
//[socket retain]; // Must retain if want to use out of this action block.
}
@catch (NSException* exception)
{
NSString *errMsg = [NSString stringWithFormat:@"%@",[exception reason]];
NSLog(errMsg);
socket = nil;
}
//** Disconnect **//
[socket close];
}
このメソッド全体をコメントアウトすると、エラーは発生しません。それがこの問題に光を当てるのに役立つかどうかはわかりません.