是否有关于如何在iOS上构建Sample Unity AR项目的教程?我显然错过了几个步骤,因为在将Editor文件夹拖到项目Asset文件夹后,点击Build and Run并将构建保存在实际的项目文件夹中,Xcode仍然给了我一些警告和几个错误:
Undefined symbols for architecture armv7:
"RobotVision::AREngine::startVision()", referenced from:
__ARUNBridgeStartVisionEngine in ARUNBridge.o
"RobotVision::VirtualSphero::locatorAlignmentAngle() const", referenced from:
ARUNBridge::getCurrentResultStruct() in ARUNBridge.o
"RobotVision::VirtualSphero::pose() const", referenced from:
ARUNBridge::getCurrentResultStruct() in ARUNBridge.o
"RobotVision::ARResult::virtualSphero() const", referenced from:
ARUNBridge::getCurrentResultStruct() in ARUNBridge.o
"RobotVision::Pose::position() const", referenced from:
ARUNBridge::getCurrentResultStruct() in ARUNBridge.o
(...)
ARUNBridge::initializeBridge(RobotVision::PlatformParameters) in ARUNBridge.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
非常感谢你的帮助!
答案 0 :(得分:0)
确保您在文件系统中与项目的Assets文件夹在同一级别构建xcode项目,postprocessbuildplayer脚本对构建xcodeproj的位置做出一些假设,并且必须处于该级别。
例如,如果您的资产文件夹在此处:
/myproject/Assets
你的xcodeproj文件应该在这里
/myproject/generatedProject/Unity-iPhone.xcodeproj
答案 1 :(得分:0)
以下步骤解决了我的问题(类似于原始帖子和第一个答案):
1)确保我的项目是Unity 3.5.7(我曾尝试继续在4.2.2中工作,我必须通过git恢复任何项目设置更改,并删除Library和obj目录)
2)删除现有项目(在包含Assets director的文件夹中,我正在构建一个我删除的目录ios)
3)XCode似乎保留了一些设置/中间文件。我必须选择Product-> Clean,同时按住alt(alt将更改" Clean"输入" Clean Build Folder")。
此时_sMotionManager链接器错误消失了,但我收到了一堆提到i386符号的链接器错误。为了摆脱这些我简单地说:
4)确保您的构建目标是设备而不是模拟器。用于iOS的模拟器构建x86二进制文件而不是arm文件,机器人/视觉库仅为ARM编译。
我希望这会有所帮助,我今天正在复活一个AR项目并偶然发现了这个问题。
答案 2 :(得分:0)
也许你可以删除:
extern CMMotionManager *sMotionManager;
并添加:
CMMotionManager *sMotionManager;
或将其放在@interface的.h文件中