2011-12-24 39 views
0

我寫了一個代碼在我的項目中沒有任何錯誤,但是每當我運行該程序時,它都會顯示類似的錯誤。我不明白我在哪裏可以檢查這些錯誤。請任何人幫助我。蘋果Mach-O鏈接器(Id)錯誤..「__objc_empty_cache」,需要框架參考

Ld的 /Users/colors/Library/Developer/Xcode/DerivedData/Testpicker-dpwydhrdvihgeafvbusqpriesfgj/Build/Products/Debug-iphonesimulator/Testpicker.app/Testpicker 正常I386 坎德拉/用戶/顏色/桌面/ prasad/Testpicker 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/co開發/ Xcode/DerivedData/Testpicker-dpwydhrdvihgeafvbusqpriesfgj/Build/Products/Debug-iphonesimulator - 開發/編譯/產品/調試-iphonesimulator -F/Users/colors/Library/Developer/Xcode/DerivedData/Testpicker-dpwydhrdvihgeafvbusqpriesfgj/filelist /Users/colors/Library/Developer/Xcode/DerivedData/Testpicker-dpwydhrdvihgeafvbusqpriesfgj/Build/Intermediates/Testpicker.build/Debug-iphonesimulator/Testpicker.build/Objects-normal/i386/Testpicker.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 CoreVideo -framework AVFoundation -framework UIKit -framework CoreGraphics -o/Users/colors/Library/Developer/Xcode/DerivedData/Testpicker- dpwydhrdvihgeafvbusqpriesfgj/Build/Products/Debug-iphonesimulator/Testpicker.app/Testpicker`

Undefined symbols for architecture i386: 
    "_objc_autoreleasePoolPush", referenced from: 
     _main in main.o 
    "_objc_msgSend", referenced from: 
     _main in main.o 
     -[ViewController viewDidLoad] in ViewController.o 
     -[ViewController changeImage] in ViewController.o 
     -[ViewController grabImage] in ViewController.o 
     -[ViewController imagePickerController:didFinishPickingImage:editingInfo:] in ViewController.o 
     -[ViewController writeImageAsMovie:toPath:size:duration:] in ViewController.o 
     -[ViewController newPixelBufferFromCGImage:size:] in ViewController.o 
     ... 
    "_objc_retainAutoreleasedReturnValue", referenced from: 
     _main in main.o 
     -[ViewController viewDidLoad] in ViewController.o 
     -[ViewController changeImage] in ViewController.o 
     -[ViewController grabImage] in ViewController.o 
     -[ViewController imagePickerController:didFinishPickingImage:editingInfo:] in ViewController.o 
     -[ViewController writeImageAsMovie:toPath:size:duration:] in ViewController.o 
     -[ViewController newPixelBufferFromCGImage:size:] in ViewController.o 
     ... 
    "_NSStringFromClass", referenced from: 
     _main in main.o 
    "_objc_release", referenced from: 
     _main in main.o 
     -[AppDelegate application:didFinishLaunchingWithOptions:] in AppDelegate.o 
     -[AppDelegate applicationWillResignActive:] in AppDelegate.o 
     -[AppDelegate applicationDidEnterBackground:] in AppDelegate.o 
     -[AppDelegate applicationWillEnterForeground:] in AppDelegate.o 
     -[AppDelegate applicationDidBecomeActive:] in AppDelegate.o 
     -[AppDelegate applicationWillTerminate:] in AppDelegate.o 
     ... 

    "_objc_setProperty", referenced from: 
     -[AppDelegate setWindow:] in AppDelegate.o 
     -[ViewController setImgPicker:] in ViewController.o 
    "_objc_storeStrong", referenced from: 
     -[AppDelegate .cxx_destruct] in AppDelegate.o 
     -[ViewController writeImageAsMovie:toPath:size:duration:] in ViewController.o 
     -[ViewController .cxx_destruct] in ViewController.o 
    "_OBJC_METACLASS_$_NSObject", referenced from: 
     _OBJC_METACLASS_$_AppDelegate in AppDelegate.o 
     _OBJC_METACLASS_$_ViewController in ViewController.o 
    "__objc_empty_cache", referenced from: 
     _OBJC_METACLASS_$_AppDelegate in AppDelegate.o 
     _OBJC_CLASS_$_AppDelegate in AppDelegate.o 
     _OBJC_METACLASS_$_ViewController in ViewController.o 
     _OBJC_CLASS_$_ViewController in ViewController.o 
    "__objc_empty_vtable", referenced from: 
     _OBJC_METACLASS_$_AppDelegate in AppDelegate.o 
     _OBJC_CLASS_$_AppDelegate in AppDelegate.o 
     _OBJC_METACLASS_$_ViewController in ViewController.o 
     _OBJC_CLASS_$_ViewController in ViewController.o 
    "_CMTimeMake", referenced from: 
     -[ViewController writeImageAsMovie:toPath:size:duration:] in ViewController.o 
    "_OBJC_CLASS_$_NSTimer", referenced from: 
     objc-class-ref in ViewController.o 
    "_OBJC_CLASS_$_NSArray", referenced from: 
     objc-class-ref in ViewController.o 
    "___CFConstantStringClassReference", referenced from: 
     CFString in ViewController.o 
     CFString in ViewController.o 
     CFString in ViewController.o 
     CFString in ViewController.o 
     CFString in ViewController.o 
     CFString in ViewController.o 
    "_OBJC_CLASS_$_NSURL", referenced from: 
     objc-class-ref in ViewController.o 
    "_OBJC_CLASS_$_NSAssertionHandler", referenced from: 
     objc-class-ref in ViewController.o 
    "_OBJC_CLASS_$_NSString", referenced from: 
     objc-class-ref in ViewController.o 
    "_OBJC_CLASS_$_NSDictionary", referenced from: 
     objc-class-ref in ViewController.o 
    "_OBJC_CLASS_$_NSNumber", referenced from: 
     objc-class-ref in ViewController.o 
    "_kCFAllocatorDefault", referenced from: 
     -[ViewController newPixelBufferFromCGImage:size:] in ViewController.o 
    "_kCMTimeZero", referenced from: 
     -[ViewController writeImageAsMovie:toPath:size:duration:] in ViewController.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

回答

11

您需要的Foundation框架添加到您的項目,這是在這些符號的定義。

請查看UIKit & AVFoundation框架的相同位置,您應該在其中看到Foundation。將其拖入您的項目中,並且所有應該都可以構建好。

+4

非常感謝。我已經添加了Foundation框架,並且我還包含了CoreMedia框架,然後它一直在工作。 –

+3

同樣在這裏,你也一定需要CoreMedia框架。 – jj0b

+0

對我有用1&爲我工作 – Praveenkumar

5

導入以下框架

#import <Foundation/Foundation.h> 
#import <AVFoundation/AVFoundation.h> 
#import <CoreMedia/CoreMedia.h> 
1

或檢查,如果你下 目標/構建階段/編譯來源缺少AppDelegate.m(及其他)。

當我手動重新添加文件時,發生了我意外刪除Xcode以外的文件。

0

您需要將Foundation框架添加到項目中,這是定義這些符號的地方。

#import <Foundation/Foundation.h> in .h file 
0

我有這個錯誤鏈接,其中包括Objective-C代碼到一個命令行工具,只有.c文件靜態庫。添加一個.m文件修復了問題。