我正在尝试从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
任何人都可以推荐任何尝试。我真的花了一整天的时间来调试这个问题而没有运气。
文斯