2011-12-16 56 views
2

當我使用__bridge_transfer__bridge地址簿接頭錯誤:i386硬件架構未定義符號

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker 
     shouldContinueAfterSelectingPerson:(ABRecordRef)person 
{ 
    NSString* nameFirst = (__bridge_transfer NSString *)ABRecordCopyValue(person, 
                kABPersonFirstNameProperty);  
    NSString* nameLast = (__bridge_transfer NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty); 
    _sight.contactName = [NSString stringWithFormat:@"%@ %@", nameFirst, nameLast]; 

    [self dismissModalViewControllerAnimated:YES]; 
    return NO; 
} 

以上代碼產生下面的錯誤:

Ld /Users/atencion/Library/Developer/Xcode/DerivedData/My_Guides-bgsawzdhvfxryifctnadtvdzotfx/Build/Products/Debug-iphonesimulator/Guides.app/Guides normal i386 
    cd "/Users/atencion/Documents/Applications Development/Xcode Projects/Guides" 
    setenv MACOSX_DEPLOYMENT_TARGET 10.6 
    setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk -L/Users/atencion/Library/Developer/Xcode/DerivedData/My_Guides-bgsawzdhvfxryifctnadtvdzotfx/Build/Products/Debug-iphonesimulator -F/Users/atencion/Library/Developer/Xcode/DerivedData/My_Guides-bgsawzdhvfxryifctnadtvdzotfx/Build/Products/Debug-iphonesimulator -filelist "/Users/atencion/Library/Developer/Xcode/DerivedData/My_Guides-bgsawzdhvfxryifctnadtvdzotfx/Build/Intermediates/My Guides.build/Debug-iphonesimulator/Guides.build/Objects-normal/i386/Guides.LinkFileList" -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50000 -framework AddressBookUI -framework MessageUI -framework Twitter -framework MediaPlayer -framework QuartzCore -framework CoreImage -framework MapKit -framework AudioToolbox -framework AVFoundation -framework MobileCoreServices -framework CoreLocation -framework UIKit -framework Foundation -framework CoreGraphics -framework CoreData -o /Users/atencion/Library/Developer/Xcode/DerivedData/My_Guides-bgsawzdhvfxryifctnadtvdzotfx/Build/Products/Debug-iphonesimulator/Guides.app/Guides 

Undefined symbols for architecture i386: 
    "_ABRecordCopyValue", referenced from: 
     -[ContactInfoViewController peoplePickerNavigationController:shouldContinueAfterSelectingPerson:] in ContactInfoViewController.o 
    "_kABPersonFirstNameProperty", referenced from: 
     -[ContactInfoViewController peoplePickerNavigationController:shouldContinueAfterSelectingPerson:] in ContactInfoViewController.o 
    "_kABPersonLastNameProperty", referenced from: 
     -[ContactInfoViewController peoplePickerNavigationController:shouldContinueAfterSelectingPerson:] in ContactInfoViewController.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

地址簿和AddressbookUI框架加入...

回答

2

好的,問題是地址簿框架在我的項目中,但從「項目」 - 「摘要選項卡」 - 「鏈接的框架和庫」中消失。

我添加框架後,所有問題都沒有了。

相關問題