【发布时间】:2013-03-28 13:07:23
【问题描述】:
我正在尝试使用从某个供应商处收到的 *.a、*.h 文件构建一个小型应用程序。 这是我第一次将外部文件添加到项目中。
我添加了文件,但出现了这些错误。
架构 armv7 的未定义符号:
“_vDSP_fft_zropD”,引用自: libmyTrekSDK_armv7.a(hr_calc.o) 中的 _fft_hr_estimation “_vDSP_vclrD”,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_vDSP_vdbconD" 中的_fft_hr_estimation,引用自: libmyTrekSDK_armv7.a(hr_calc.o) 中的 _fft_hr_estimation “_vDSP_vmulD”,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_vDSP_hamm_windowD" 中的_fft_hr_estimation,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_vDSP_zaspecD" 中的_fft_hr_init,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_OBJC_CLASS_$_EAAccessoryManager" 中的_fft_hr_estimation,引用自: libmyTrekSDK_armv7.a(hrMonitor.o) "_EAAccessoryDidDisconnectNotification" 中的 objc-class-ref,引用自: -libmyTrekSDK_armv7.a(hrMonitor.o) "_vDSP_create_fftsetupD"中的[HRMonitor startup],引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_EAAccessoryDidConnectNotification" 中的_fft_hr_init,引用自: -libmyTrekSDK_armv7.a(hrMonitor.o) "_OBJC_CLASS_$_EASession" 中的[HRMonitor startup],引用自: libmyTrekSDK_armv7.a(hrMonitor.o) "_vDSP_ctozD" 中的 objc-class-ref,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_vDSP_maxmgvD" 中的_fft_hr_estimation,引用自: libmyTrekSDK_armv7.a(hr_calc.o) "_vDSP_destroy_fftsetupD" 中的_fft_hr_estimation,引用自: libmyTrekSDK_armv7.a(hr_calc.o) 中的 _fft_hr_free ld:未找到架构 armv7 的符号 clang:错误:链接器命令失败 退出代码为 1(使用 -v 查看调用)
到目前为止我已经尝试过:(在其他帖子中提到)
- 我已确保 *.a 文件包含在 Link Binary With Library 中。
- 尝试将 C++ 语言方言和 C++ 标准库更改为编译器默认值。
更多信息:
- 文件位于项目文件夹中。
- 我使用的是 iPhone 4S v.6.1.3,项目的部署目标是 iOS 6.1。
【问题讨论】:
-
.a 文件是否链接到 libmyTrekSDK_armv7.a?如果是这样,看起来它之前需要另一个库(可能是 Accelerate.framework)...也尝试链接 ExternalAccessory.framework
-
@jjv360 你拯救了我的一天!