簡體   English   中英

為什么AVFoundation不會鏈接到我的XCode 3.2.3 iPhone 4.0.1項目?

[英]Why won't AVFoundation link with my XCode 3.2.3 iPhone 4.0.1 project?

我正在關注http://developer.apple.com/iphone/library/qa/qa2010/qa1702.html上的參考資料,以從iPhone攝像頭捕獲視頻。 除了該頁面的代碼之外,這是一個新項目。 我也將AVFoundation框架添加到項目中。 這是我得到的鏈接器錯誤:

Build my project of project my project with configuration Debug

CompileC "build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv6/MainViewController.o" /Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m normal armv6 objective-c com.apple.compilers.gcc.4_2
cd /Users/mwilliamson/Projects/my_project/iphone
setenv LANG en_US.US-ASCII
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=4.0 -iquote "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-generated-files.hmap" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-own-target-headers.hmap" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-all-target-headers.hmap" -iquote "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-project-headers.hmap" -F/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -I/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos/include -I/Users/mwilliamson/Projects/my_project/iphone/opencv_device/include "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/DerivedSources/armv6" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/DerivedSources" -include /var/folders/kW/kW6u6B7SGyGYu+nNumtIa++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/my_project_Prefix-alujyqxskcuyuogdsynmjyrkxbhh/my_project_Prefix.pch -c /Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m -o "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv6/MainViewController.o"

/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m: In function '-[MainViewController captureOutput:didOutputSampleBuffer:fromConnection:]':
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: 'MainViewController' may not respond to '-imageFromSampleBuffer:'
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: (Messages without a matching method signature
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: will be assumed to return 'id' and accept
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: '...' as arguments.)

Ld "build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv6/my project" normal armv6
cd /Users/mwilliamson/Projects/my_project/iphone
setenv IPHONEOS_DEPLOYMENT_TARGET 4.0
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk -L/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -F/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -filelist "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv6/my project.LinkFileList" -dead_strip -lz -lstdc++ /Users/mwilliamson/Projects/my_project/iphone/opencv_device/lib/libcxcore.a /Users/mwilliamson/Projects/my_project/iphone/opencv_device/lib/libcv.a -miphoneos-version-min=4.0 -framework Foundation -framework UIKit -framework CoreGraphics -framework AVFoundation -o "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv6/my project"

Undefined symbols:
  "_CVPixelBufferGetBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferUnlockBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferLockBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CMSampleBufferGetImageBuffer", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferGetHeight", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_kCVPixelBufferPixelFormatTypeKey", referenced from:
      _kCVPixelBufferPixelFormatTypeKey$non_lazy_ptr in MainViewController.o
     (maybe you meant: _kCVPixelBufferPixelFormatTypeKey$non_lazy_ptr)
  "_CVPixelBufferGetWidth", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferGetBytesPerRow", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CMTimeMake", referenced from:
      -[MainViewController setupCaptureSession] in MainViewController.o
  "_CVPixelBufferGetDataSize", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

CompileC "build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv7/MainViewController.o" /Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m normal armv7 objective-c com.apple.compilers.gcc.4_2
cd /Users/mwilliamson/Projects/my_project/iphone
setenv LANG en_US.US-ASCII
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv7 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk -fvisibility=hidden -gdwarf-2 -mthumb -miphoneos-version-min=4.0 -iquote "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-generated-files.hmap" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-own-target-headers.hmap" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-all-target-headers.hmap" -iquote "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/my project-project-headers.hmap" -F/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -I/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos/include -I/Users/mwilliamson/Projects/my_project/iphone/opencv_device/include "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/DerivedSources/armv7" "-I/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/DerivedSources" -include /var/folders/kW/kW6u6B7SGyGYu+nNumtIa++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/my_project_Prefix-gtrotaxhqdjhgqbqbsnyeqjkaxdt/my_project_Prefix.pch -c /Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m -o "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv7/MainViewController.o"

/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m: In function '-[MainViewController captureOutput:didOutputSampleBuffer:fromConnection:]':
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: 'MainViewController' may not respond to '-imageFromSampleBuffer:'
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: (Messages without a matching method signature
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: will be assumed to return 'id' and accept
/Users/mwilliamson/Projects/my_project/iphone/Classes/MainViewController.m:126: warning: '...' as arguments.)

Ld "build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv7/my project" normal armv7
cd /Users/mwilliamson/Projects/my_project/iphone
setenv IPHONEOS_DEPLOYMENT_TARGET 4.0
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/opt/local/bin:/usr/local/git/bin"
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk -L/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -F/Users/mwilliamson/Projects/my_project/iphone/build/Debug-iphoneos -filelist "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv7/my project.LinkFileList" -dead_strip -lz -lstdc++ /Users/mwilliamson/Projects/my_project/iphone/opencv_device/lib/libcxcore.a /Users/mwilliamson/Projects/my_project/iphone/opencv_device/lib/libcv.a -miphoneos-version-min=4.0 -framework Foundation -framework UIKit -framework CoreGraphics -framework AVFoundation -o "/Users/mwilliamson/Projects/my_project/iphone/build/my project.build/Debug-iphoneos/my project.build/Objects-normal/armv7/my project"

Undefined symbols:
  "_CVPixelBufferGetBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferUnlockBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferLockBaseAddress", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CMSampleBufferGetImageBuffer", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferGetHeight", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_kCVPixelBufferPixelFormatTypeKey", referenced from:
      _kCVPixelBufferPixelFormatTypeKey$non_lazy_ptr in MainViewController.o
     (maybe you meant: _kCVPixelBufferPixelFormatTypeKey$non_lazy_ptr)
  "_CVPixelBufferGetWidth", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CVPixelBufferGetBytesPerRow", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
  "_CMTimeMake", referenced from:
      -[MainViewController setupCaptureSession] in MainViewController.o
  "_CVPixelBufferGetDataSize", referenced from:
      -[MainViewController imageFromSampleBuffer:] in MainViewController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

我再一次回答我自己的問題....我還需要添加CoreVideo和CoreMedia框架。

我花了幾個小時努力解決這個問題的變化。 我發布這個是為了幫助其他可能處於相同情況的人。 我已經將CoreVideo和CoreMedia鏈接到了我的項目。 但是,我仍然遇到這個問題。 經過大量的搜索和嘗試不同的事情后,我遇到了這篇文章。 這是我的修復:

1)刪除有問題的庫(在我的例子中是CoreVideo和CoreMedia)。 通過在項目導航中刪除它們並選擇“刪除引用”並從“構建階段”中的鏈接框架中刪除它們來執行此操作

2)再次添加框架,清理並重新編譯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM