1

我试图从 AudioCore 中包含几个不同的项目,特别是 AQRecorder。但是,这确实依赖于 c++ 代码。通常这不是问题,因为我只是将视图控制器重命名为扩展名为 .mm,一切都很好。但在这种情况下,我对 AQRecorder.h 的依赖间接地转到了我的 main.m,这给我带来了极大的痛苦。

我尝试了几种不同的方法,包括以下内容:

1) 更改所有 .m 和 .cpp 文件 -> .mm 文件

一切都完美编译,但是,它无法部署到我的 iOS 设备或模拟器,因为在部署到设备时出现此错误:

“选择具有受支持架构的目标,以便在此设备上运行。”

我正在使用 XCode 4.6,我的有效架构是 armv7 和 armv7s(我玩过这些但没有运气)。

2)尝试使用不透明指针,例如本指南中的指针:

http://philjordan.eu/article/mixing-objective-c-c++-and-objective-c++

我仍然遇到无法编译的相同问题。

Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_AQWrappedRecorder", referenced from:
      objc-class-ref in RTPPacketSender.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我的依赖项如下:

AQRecorder.h -> RTPPacketSender.h -> ActiveConversationViewController.h -> ConversationViewController.h -> AppDelegate.h -> main.m

其他人可以推荐任何尝试的东西。我确实花了一整天的时间调试这个问题,但没有运气。

文斯

4

0 回答 0