Я написал простую функцию, передает компилятор, но не компоновщик.iOS undefined linker ld error
Любая идея, почему?
- (BOOL) connectedToWifi
{
CFArrayRef myArray = CNCopySupportedInterfaces();
// Get the dictionary containing the captive network infomation
CFDictionaryRef captiveNtwrkDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0));
NSLog(@"Information of the network we're connected to: %@", captiveNtwrkDict);
NSDictionary *dict = (__bridge NSDictionary*) captiveNtwrkDict;
NSString* ssid = [dict objectForKey:@"SSID"];
if ([ssid rangeOfString:@"WXYZ"].location == NSNotFound || ssid == NULL)
{
return false;
}
else
{
return true;
}
}
Это ошибка, я получаю:
Undefined symbols for architecture i386:
"_CNCopySupportedInterfaces", referenced from:
-[miApp_funcs connectedToWifi] in miApp_funcs.o
"_CNCopyCurrentNetworkInfo", referenced from:
-[miApp_funcs connectedToWifi] in miApp_funcs.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Похоже, что у вас отсутствует необходимая библиотека или фреймворк, попробуйте добавить инфраструктуру SystemConfiguration к своей цели. – danielbeard
Новичок, как мне это сделать с последним Xcode на льве? – user848106
В боковой панели нажмите на свой проект -> Связанные структуры и библиотеки -> + -> и выберите SystemConfiguration framework – danielbeard