question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[iOS] How to integrate Vuforia

See original GitHub issue

I started with react-native-unity-demo and after some issues with link.xml, the demo project is working now.

I tried to include Vuforia by clicking on “Vuforia Augmented Reality Support” in Unity “Player Settings > iOS > VR Settings”, rebuild the Unity Project with “Build Export IOS” and recompiled it in XCode.

It seems like XCode is missing some Vuforia dependencies. Do i have to add anything else to UnityConfig.xcconfig?

//
//  UnityConfig.xcconfig
//  rnunitydemo
//
//  Created by xzper on 2018/3/6.
//  Copyright © 2018年 Facebook. All rights reserved.
//
UNITY_SCRIPTING_BACKEND = il2cpp;
GCC_PREFIX_HEADER = $(SRCROOT)/UnityExport/Classes/Prefix.pch;

HEADER_SEARCH_PATHS = $(inherited) "$(SRCROOT)/UnityExport/Classes" "$(SRCROOT)/UnityExport/Classes/Unity" "$(SRCROOT)/UnityExport/Classes/Native" "$(SRCROOT)/UnityExport/Libraries" "$(SRCROOT)/UnityExport/Libraries/libil2cpp/include" ${PODS_HEADER_PATHS};

LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)/UnityExport/Libraries" "$(SRCROOT)/UnityExport/Libraries/libil2cpp/include" ${PODS_LIBRARY_PATHS};

// If using .net 4.0 in Unity, append -DNET_4_0 to OTHER_CFLAGS
OTHER_CFLAGS = $(inherited) -DINIT_SCRIPTING_BACKEND=1 -fno-strict-overflow -DRUNTIME_IL2CPP=1;

OTHER_LDFLAGS = $(inherited) -weak-lSystem -weak_framework CoreMotion -weak_framework GameKit -weak_framework iAd -framework AVFoundation -framework AudioToolbox -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework CoreMedia -framework CoreVideo -framework Foundation -framework MediaPlayer -framework MediaToolbox -framework Metal -framework OpenAL -framework OpenGLES -framework QuartzCore -framework SystemConfiguration -framework UIKit -liconv.2 -liPhone-lib -lil2cpp ${PODS_LIBRARIES};

CLANG_CXX_LANGUAGE_STANDARD = c++0x;
CLANG_CXX_LIBRARY = libc++;
CLANG_ENABLE_MODULES = NO;
CLANG_WARN_BOOL_CONVERSION = NO;
CLANG_WARN_CONSTANT_CONVERSION = NO;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
CLANG_WARN_EMPTY_BODY = NO;
CLANG_WARN_ENUM_CONVERSION = NO;
CLANG_WARN_INT_CONVERSION = NO;
CLANG_WARN_OBJC_ROOT_CLASS = YES;
CLANG_WARN_UNREACHABLE_CODE = NO;
CLANG_WARN__DUPLICATE_METHOD_MATCH = NO;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_ENABLE_OBJC_EXCEPTIONS = NO;
GCC_ENABLE_CPP_RTTI = NO;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_THUMB_SUPPORT = NO;
GCC_USE_INDIRECT_FUNCTION_CALLS = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION[arch=*64] = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = NO;
GCC_WARN_UNINITIALIZED_AUTOS = NO;
GCC_WARN_UNUSED_FUNCTION = NO;

ENABLE_BITCODE = NO;

DEAD_CODE_STRIPPING = YES;

This is what XCode throws at me:

Ld /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/rnunitydemo.app/rnunitydemo normal arm64 (in target: rnunitydemo)
    cd /Users/owiesniak/Code/react-native-unity-demo/ios
    export IPHONEOS_DEPLOYMENT_TARGET=9.0
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk -L/Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos -L/Users/owiesniak/Code/react-native-unity-demo/ios/UnityExport/Libraries -L/Users/owiesniak/Code/react-native-unity-demo/ios/UnityExport/Libraries/libil2cpp/include -L/Users/owiesniak/Code/react-native-unity-demo/ios/rnunitydemo -F/Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos -filelist /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Intermediates.noindex/rnunitydemo.build/Debug-iphoneos/rnunitydemo.build/Objects-normal/arm64/rnunitydemo.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -miphoneos-version-min=9.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Intermediates.noindex/rnunitydemo.build/Debug-iphoneos/rnunitydemo.build/Objects-normal/arm64/rnunitydemo_lto.o -Xlinker -no_deduplicate -stdlib=libc++ -fobjc-arc -fobjc-link-runtime -weak-lSystem -weak_framework CoreMotion -weak_framework GameKit -weak_framework iAd -framework AVFoundation -framework AudioToolbox -framework CFNetwork -framework CoreGraphics -framework CoreLocation -framework CoreMedia -framework CoreVideo -framework Foundation -framework MediaPlayer -framework MediaToolbox -framework Metal -framework OpenAL -framework OpenGLES -framework QuartzCore -framework SystemConfiguration -framework UIKit -liconv.2 -liPhone-lib -lil2cpp -ObjC -lc++ /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTBlob.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTAnimation.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libReact.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTAnimation.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTActionSheet.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTGeolocation.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTImage.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTLinking.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTNetwork.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTSettings.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTText.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTVibration.a /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/libRCTWebSocket.a -lRNUnityView -liPhone-lib -lil2cpp -lVuforiaWrapper -Xlinker -dependency_info -Xlinker /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Intermediates.noindex/rnunitydemo.build/Debug-iphoneos/rnunitydemo.build/Objects-normal/arm64/rnunitydemo_dependency_info.dat -o /Users/owiesniak/Library/Developer/Xcode/DerivedData/rnunitydemo-fngsqnqhkzukmdbkcvcrahaefnmz/Build/Products/Debug-iphoneos/rnunitydemo.app/rnunitydemo

ld: warning: arm64 function not 4-byte aligned: _unwind_tester from /Users/owiesniak/Code/react-native-unity-demo/ios/UnityExport/Libraries/libiPhone-lib.a(unwind_test_arm64.o)
Undefined symbols for architecture arm64:
  "Vuforia::MetalTextureData::~MetalTextureData()", referenced from:
      VuforiaWrapper::PlatformiOS::setVideoBackgroundTexturePtr(void*, int) in libVuforiaWrapper.a(PlatformiOS.o)
  "Vuforia::SmartTerrain::getClassType()", referenced from:
      _smartTerrain_hitTest in libVuforiaWrapper.a(SmartTerrain.o)
      _trackerManagerInitTracker in libVuforiaWrapper.a(TrackerManager.o)
      _trackerManagerDeinitTracker in libVuforiaWrapper.a(TrackerManager.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::Anchor::getClassType()", referenced from:
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::RenderingPrimitives::RenderingPrimitives(Vuforia::RenderingPrimitives const&)", referenced from:
      _renderingPrimitives_UpdateCopy in libVuforiaWrapper.a(RenderingPrimitives.o)
  "Vuforia::VuMarkTarget::getClassType()", referenced from:
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::Recorder::getInstance()", referenced from:
      _recorderInit in libVuforiaWrapper.a(Recorder.o)
      _recorderStart in libVuforiaWrapper.a(Recorder.o)
      _recorderStop in libVuforiaWrapper.a(Recorder.o)
  "Vuforia::HandheldTransformModel::setPivotPoint(Vuforia::Vec3F const&)", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::HeadTransformModel::setPivotPoint(Vuforia::Vec3F const&)", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::HandheldTransformModel::~HandheldTransformModel()", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::Obb3D::Obb3D(Vuforia::Obb3D const&)", referenced from:
      _modelTargetGetBoundingBox in libVuforiaWrapper.a(ModelTarget.o)
  "Vuforia::Obb3D::getCenter() const", referenced from:
      _modelTargetGetBoundingBox in libVuforiaWrapper.a(ModelTarget.o)
  "Vuforia::setInitParameters(int, char const*)", referenced from:
      _initQCARiOS in libVuforiaWrapper.a(VuforiaUnityPlayer.o)
  "Vuforia::init()", referenced from:
      _initQCARiOS in libVuforiaWrapper.a(VuforiaUnityPlayer.o)
  "Vuforia::Rectangle::getLeftTopY() const", referenced from:
      _imageTargetGetVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
  "Vuforia::MetalTextureData::MetalTextureData(id<MTLTexture>)", referenced from:
      VuforiaWrapper::PlatformiOS::setVideoBackgroundTexturePtr(void*, int) in libVuforiaWrapper.a(PlatformiOS.o)
  "Vuforia::HeadTransformModel::HeadTransformModel()", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::Rectangle::getRightBottomX() const", referenced from:
      _imageTargetGetVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
  "Vuforia::Rectangle::~Rectangle()", referenced from:
      _imageTargetCreateVirtualButton in libVuforiaWrapper.a(ImageTarget.o)
      _virtualButtonSetAreaRectangle in libVuforiaWrapper.a(VirtualButton.o)
  "Vuforia::Rectangle::getRightBottomY() const", referenced from:
      _imageTargetGetVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
  "Vuforia::ObjectTracker::getClassType()", referenced from:
      _imageTargetBuilderStartScan in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderBuild in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderStopScan in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderGetFrameQuality in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderGetTrackableSource in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _objectTrackerCreateDataSet in libVuforiaWrapper.a(ObjectTracker.o)
      _objectTrackerDestroyDataSet in libVuforiaWrapper.a(ObjectTracker.o)
      ...
  "Vuforia::HandheldTransformModel::HandheldTransformModel()", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::onSurfaceChanged(int, int)", referenced from:
      _onSurfaceChanged in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::onResume()", referenced from:
      _onResume in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::onSurfaceCreated()", referenced from:
      _onSurfaceCreated in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::deinit()", referenced from:
      _qcarDeinit in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::DiagnosticsRecorder::clearAll()", referenced from:
      _diagnosticsRecorderClearAll in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::DiagnosticsRecorder::start()", referenced from:
      _diagnosticsRecorderStart in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::DiagnosticsRecorder::deinit()", referenced from:
      _diagnosticsRecorderDeinit in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::ModelTarget::getClassType()", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      findModelTarget(void*, char const*) in libVuforiaWrapper.a(ModelTarget.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::DiagnosticsRecorder::addUserComment(char const*)", referenced from:
      _diagnosticsRecorderAddUserComment in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::EyewearDevice::getClassType()", referenced from:
      _deviceIsEyewearDevice in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsSeeThru in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceGetScreenOrientation in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDualDisplay in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDisplayExtended in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDisplayExtendedGLOnly in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceSetDisplayExtended in libVuforiaWrapper.a(Eyewear.o)
      ...
  "Vuforia::Tool::convert2GLMatrix(Vuforia::Matrix34F const&)", referenced from:
      _renderingPrimitives_GetVideoBackgroundProjectionMatrix in libVuforiaWrapper.a(RenderingPrimitives.o)
  "Vuforia::Type::isOfType(Vuforia::Type) const", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      _trackerManagerInitTracker in libVuforiaWrapper.a(TrackerManager.o)
      _trackerManagerDeinitTracker in libVuforiaWrapper.a(TrackerManager.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::DiagnosticsRecorder::stop()", referenced from:
      _diagnosticsRecorderStop in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::Tool::convertPerspectiveProjection2GLMatrix(Vuforia::Matrix34F const&, float, float)", referenced from:
      _renderingPrimitives_GetProjectionMatrix in libVuforiaWrapper.a(RenderingPrimitives.o)
  "Vuforia::DiagnosticsRecorder::init(char const*, Vuforia::STORAGE_TYPE)", referenced from:
      _diagnosticsRecorderInit in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::DataSet::exists(char const*, Vuforia::STORAGE_TYPE)", referenced from:
      _dataSetExists in libVuforiaWrapper.a(DataSet.o)
  "Vuforia::Tool::setRotationFromQuaternion(Vuforia::Matrix34F&, Vuforia::Vec4F const&)", referenced from:
      _positionOrientationToCVPoseMatrix in libVuforiaWrapper.a(MathUtils.o)
  "Vuforia::CylinderTarget::getClassType()", referenced from:
      _cylinderTargetGetDimensions in libVuforiaWrapper.a(CylinderTarget.o)
      _cylinderTargetSetSideLength in libVuforiaWrapper.a(CylinderTarget.o)
      _cylinderTargetSetTopDiameter in libVuforiaWrapper.a(CylinderTarget.o)
      _cylinderTargetSetBottomDiameter in libVuforiaWrapper.a(CylinderTarget.o)
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
      ...
  "Vuforia::GLTextureData::~GLTextureData()", referenced from:
      _rendererSetVideoBackgroundTextureID in libVuforiaWrapper.a(Renderer.o)
  "Vuforia::CustomViewerParameters::CustomViewerParameters(float, char const*, char const*)", referenced from:
      _customViewerParameters_new in libVuforiaWrapper.a(ViewerParameters.o)
  "Vuforia::Tool::multiply(Vuforia::Matrix44F const&, Vuforia::Matrix44F const&)", referenced from:
      _applyZRotation in libVuforiaWrapper.a(MathUtils.o)
      _applyZRotationQuaternion in libVuforiaWrapper.a(MathUtils.o)
  "Vuforia::ObjectTarget::getClassType()", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      _multiTargetGetLargestSizeComponent in libVuforiaWrapper.a(MultiTarget.o)
      _objectTargetSetSize in libVuforiaWrapper.a(ObjectTarget.o)
      _objectTargetGetSize in libVuforiaWrapper.a(ObjectTarget.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::Obb3D::getHalfExtents() const", referenced from:
      _modelTargetGetBoundingBox in libVuforiaWrapper.a(ModelTarget.o)
  "Vuforia::onPause()", referenced from:
      _onPause in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::ViewerParameters::ViewerParameters(Vuforia::ViewerParameters const&)", referenced from:
      _viewerParameters_copy in libVuforiaWrapper.a(ViewerParameters.o)
      _viewerParametersList_GetByIndex in libVuforiaWrapper.a(ViewerParametersList.o)
      _viewerParametersList_GetByNameManufacturer in libVuforiaWrapper.a(ViewerParametersList.o)
  "Vuforia::DiagnosticsRecorder::clearUnpinned()", referenced from:
      _diagnosticsRecorderClearUnpinned in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::CameraDevice::getInstance()", referenced from:
      _cameraDeviceInitCamera in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceDeinitCamera in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceStartCamera in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceStopCamera in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceGetNumVideoModes in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceGetVideoMode in libVuforiaWrapper.a(CameraDevice.o)
      _cameraDeviceGetCameraDirection in libVuforiaWrapper.a(CameraDevice.o)
      ...
  "Vuforia::RenderingPrimitives::~RenderingPrimitives()", referenced from:
      _renderingPrimitives_UpdateCopy in libVuforiaWrapper.a(RenderingPrimitives.o)
  "Vuforia::Renderer::getInstance()", referenced from:
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      _rendererEnd in libVuforiaWrapper.a(Tracker.o)
      _rendererSetVideoBackgroundCfg in libVuforiaWrapper.a(Renderer.o)
      _rendererGetVideoBackgroundCfg in libVuforiaWrapper.a(Renderer.o)
      _rendererSetVideoBackgroundTextureID in libVuforiaWrapper.a(Renderer.o)
      _rendererIsVideoBackgroundTextureInfoAvailable in libVuforiaWrapper.a(Renderer.o)
      _rendererGetVideoBackgroundTextureInfo in libVuforiaWrapper.a(Renderer.o)
      ...
  "Vuforia::setDriverLibrary(char const*, void*)", referenced from:
      _qcarSetDriverLibrary in libVuforiaWrapper.a(QCAR.o)
  "Vuforia::State::getIllumination() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::getBufferSize(int, int, Vuforia::PIXEL_FORMAT)", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _vuMarkTargetGetInstanceImage in libVuforiaWrapper.a(Tracker.o)
      _qcarGetBufferSize in libVuforiaWrapper.a(QCAR.o)
      _guideViewGetImage in libVuforiaWrapper.a(GuideView.o)
  "Vuforia::Type::Type()", referenced from:
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::State::getFrame() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      StateHolder::updateCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::PositionalDeviceTracker::getClassType()", referenced from:
      _checkPredictiveAndUpdateStateHolderMode in libVuforiaWrapper.a(Tracker.o)
      _positionalDeviceTracker_Reset in libVuforiaWrapper.a(DeviceTracker.o)
      _positionalDeviceTracker_CreateAnchorFromPose in libVuforiaWrapper.a(DeviceTracker.o)
      _positionalDeviceTracker_CreateAnchorFromHitTestResult in libVuforiaWrapper.a(DeviceTracker.o)
      _positionalDeviceTracker_DestroyAnchor in libVuforiaWrapper.a(DeviceTracker.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
      ...
  "Vuforia::HeadTransformModel::~HeadTransformModel()", referenced from:
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
  "Vuforia::Frame::getIndex() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      StateHolder::updateCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::DeviceTracker::getClassType()", referenced from:
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::State::getCameraCalibration() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _renderingPrimitives_GetProjectionMatrix in libVuforiaWrapper.a(RenderingPrimitives.o)
  "Vuforia::State::State(Vuforia::State const&)", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      _smartTerrain_hitTest in libVuforiaWrapper.a(SmartTerrain.o)
      StateHolder::Vuforia_onUpdate(Vuforia::State&) in libVuforiaWrapper.a(StateHolder.o)
      StateHolder::updateCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::Frame::getImages() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::MultiTarget::getClassType()", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      _multiTargetGetLargestSizeComponent in libVuforiaWrapper.a(MultiTarget.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::RotationalDeviceTracker::getClassType()", referenced from:
      _checkPredictiveAndUpdateStateHolderMode in libVuforiaWrapper.a(Tracker.o)
      _rotationalDeviceTracker_Recenter in libVuforiaWrapper.a(DeviceTracker.o)
      _rotationalDeviceTracker_SetPosePrediction in libVuforiaWrapper.a(DeviceTracker.o)
      _rotationalDeviceTracker_GetPosePrediction in libVuforiaWrapper.a(DeviceTracker.o)
      _rotationalDeviceTracker_SetModelCorrectionMode in libVuforiaWrapper.a(DeviceTracker.o)
      _rotationalDeviceTracker_GetModelCorrectionMode in libVuforiaWrapper.a(DeviceTracker.o)
      _rotationalDeviceTracker_SetModelCorrectionModeWithTransform in libVuforiaWrapper.a(DeviceTracker.o)
      ...
  "Vuforia::State::getTrackableResults() const", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _determineNewVuMarks in libVuforiaWrapper.a(Tracker.o)
      _vuMarkTargetGetInstanceImage in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::VuMarkTargetResult::getClassType()", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _determineNewVuMarks in libVuforiaWrapper.a(Tracker.o)
      _vuMarkTargetGetInstanceImage in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::DiagnosticsRecorder::addScreenshot(char const*, Vuforia::STORAGE_TYPE)", referenced from:
      _diagnosticsRecorderAddScreenshot in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::DeviceTrackableResult::getClassType()", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::ViewerParametersList::getListForAuthoringTools()", referenced from:
      _viewerParametersList_GetListForAuthoringTools in libVuforiaWrapper.a(ViewerParametersList.o)
  "Vuforia::DiagnosticsRecorder::generateDiagnostics(char const*)", referenced from:
      _diagnosticsRecorderGenerateDiagnostics in libVuforiaWrapper.a(DiagnosticsRecorder.o)
  "Vuforia::Frame::~Frame()", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      StateHolder::updateCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::setAllowedFusionProviders(Vuforia::FUSION_PROVIDER_TYPE)", referenced from:
      _qcarSetAllowedFusionProviders in libVuforiaWrapper.a(QCAR.o)
  "Vuforia::Tool::setTranslation(Vuforia::Matrix34F&, Vuforia::Vec3F const&)", referenced from:
      _positionOrientationToCVPoseMatrix in libVuforiaWrapper.a(MathUtils.o)
  "Vuforia::Rectangle::Rectangle(float, float, float, float)", referenced from:
      _imageTargetCreateVirtualButton in libVuforiaWrapper.a(ImageTarget.o)
      _virtualButtonSetAreaRectangle in libVuforiaWrapper.a(VirtualButton.o)
  "Vuforia::setFrameFormat(Vuforia::PIXEL_FORMAT, bool)", referenced from:
      _qcarSetFrameFormat in libVuforiaWrapper.a(QCAR.o)
  "Vuforia::Device::getInstance()", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _deviceIsEyewearDevice in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsSeeThru in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceGetScreenOrientation in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDualDisplay in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDisplayExtended in libVuforiaWrapper.a(Eyewear.o)
      _eyewearDeviceIsDisplayExtendedGLOnly in libVuforiaWrapper.a(Eyewear.o)
      ...
  "Vuforia::Obb3D::~Obb3D()", referenced from:
      _modelTargetGetBoundingBox in libVuforiaWrapper.a(ModelTarget.o)
  "Vuforia::State::State()", referenced from:
      _initFrameState in libVuforiaWrapper.a(Tracker.o)
      StateHolder::getCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::ImageTarget::getClassType()", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      _imageTargetGetNumVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
      _imageTargetGetVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
      _imageTargetGetVirtualButtonName in libVuforiaWrapper.a(ImageTarget.o)
      _imageTargetCreateVirtualButton in libVuforiaWrapper.a(ImageTarget.o)
      _imageTargetDestroyVirtualButton in libVuforiaWrapper.a(ImageTarget.o)
      _targetFinderEnableTracking in libVuforiaWrapper.a(TargetFinder.o)
      ...
  "Vuforia::State::~State()", referenced from:
      _deinitFrameState in libVuforiaWrapper.a(Tracker.o)
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _VuforiaRenderEvent in libVuforiaWrapper.a(Tracker.o)
      _vuMarkTargetGetInstanceImage in libVuforiaWrapper.a(Tracker.o)
      std::__1::__deque_base<Vuforia::State, std::__1::allocator<Vuforia::State> >::clear() in libVuforiaWrapper.a(Tracker.o)
      _renderingPrimitives_GetProjectionMatrix in libVuforiaWrapper.a(RenderingPrimitives.o)
      _smartTerrain_hitTest in libVuforiaWrapper.a(SmartTerrain.o)
      ...
  "Vuforia::MetalRenderData::MetalRenderData()", referenced from:
      __GLOBAL__sub_I_PlatformiOS.mm in libVuforiaWrapper.a(PlatformiOS.o)
  "Vuforia::VuMarkTemplate::getClassType()", referenced from:
      _dataSetGetTrackablesOfType in libVuforiaWrapper.a(DataSet.o)
      _vuMarkTemplateGetVuMarkUserData in libVuforiaWrapper.a(VuMarkTemplate.o)
      _vuMarkTemplateGetOrigin in libVuforiaWrapper.a(VuMarkTemplate.o)
      _vuMarkTemplateSetTrackingFromRuntimeAppearance in libVuforiaWrapper.a(VuMarkTemplate.o)
      TypeMapping::getType(int) in libVuforiaWrapper.a(TypeMapping.o)
      TypeMapping::getTypeID(Vuforia::Type) in libVuforiaWrapper.a(TypeMapping.o)
  "Vuforia::registerCallback(Vuforia::UpdateCallback*)", referenced from:
      _checkPredictiveAndUpdateStateHolderMode in libVuforiaWrapper.a(Tracker.o)
      _initFrameState in libVuforiaWrapper.a(Tracker.o)
      _deinitFrameState in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::MetalRenderData::~MetalRenderData()", referenced from:
      __GLOBAL__sub_I_PlatformiOS.mm in libVuforiaWrapper.a(PlatformiOS.o)
  "Vuforia::getLibraryVersion()", referenced from:
      _getVuforiaLibraryVersion in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::getActiveFusionProvider()", referenced from:
      _qcarGetActiveFusionProvider in libVuforiaWrapper.a(QCAR.o)
  "Vuforia::Rectangle::getLeftTopX() const", referenced from:
      _imageTargetGetVirtualButtons in libVuforiaWrapper.a(ImageTarget.o)
  "Vuforia::ImageTargetResult::getClassType()", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
  "Vuforia::TrackerManager::getInstance()", referenced from:
      _trackerStart in libVuforiaWrapper.a(Tracker.o)
      _trackerStop in libVuforiaWrapper.a(Tracker.o)
      _checkPredictiveAndUpdateStateHolderMode in libVuforiaWrapper.a(Tracker.o)
      _imageTargetBuilderStartScan in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderBuild in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderStopScan in libVuforiaWrapper.a(ImageTargetBuilder.o)
      _imageTargetBuilderGetFrameQuality in libVuforiaWrapper.a(ImageTargetBuilder.o)
      ...
  "Vuforia::setRotation(int)", referenced from:
      _setSurfaceOrientationiOS in libVuforiaWrapper.a(VuforiaUnityPlayer.o)
  "Vuforia::GLTextureData::GLTextureData(int)", referenced from:
      _rendererSetVideoBackgroundTextureID in libVuforiaWrapper.a(Renderer.o)
  "Vuforia::setHint(unsigned int, int)", referenced from:
      _qcarSetHint in libVuforiaWrapper.a(QCAR.o)
      _setApplicationEnvironment in libVuforiaWrapper.a(QCARWrapper.o)
  "Vuforia::State::operator=(Vuforia::State const&)", referenced from:
      StateHolder::updateCurrentState() in libVuforiaWrapper.a(StateHolder.o)
      StateHolder::getCurrentState() in libVuforiaWrapper.a(StateHolder.o)
  "Vuforia::Tool::convertPose2GLMatrix(Vuforia::Matrix34F const&)", referenced from:
      _updateQCAR in libVuforiaWrapper.a(Tracker.o)
      _guideViewGetPose in libVuforiaWrapper.a(GuideView.o)
      _renderingPrimitives_GetEyeDisplayAdjustmentMatrix in libVuforiaWrapper.a(RenderingPrimitives.o)
      _smartTerrain_hitTest in libVuforiaWrapper.a(SmartTerrain.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:19

github_iconTop GitHub Comments

5reactions
alvincrisuycommented, Jan 11, 2019

This is very helpful. Thank you for posting your solution even though no one replies.

5reactions
JanOwiesniakcommented, Jun 21, 2019

I somehow fixed it.

What if have done:

  1. Start with a fresh empty Unity Project (named it rnunitydemo)
  2. Activated Vuforia Support
  3. Added Vuforia License Key
  4. Set Auto Graphics API to first: OpenGLES2, second: Metal
  5. Added Editor scripts
  6. Exported it to UnityExport via new Build menu
  7. Opened Xcode
  8. Added to Info.plist
  <key>NSCameraUsageDescription</key>
  <string>AR</string>
  1. Manually integrated Vuforia as mentioned
  2. Clean Build Folder
  3. rm -rf ~/Library/Developer/Xcode/DerivedData
  4. Build
Read more comments on GitHub >

github_iconTop Results From Across the Web

Deploying a Vuforia Unity Project to iOS 11.3.1 - Medium
I love Unity and I absolutely adore building AR experiences with their Vuforia integration. But recently I ran into an issue when trying...
Read more >
ios + vuforia not working · Issue #133 · googlevr/cardboard
Hello! If i build sample scene on IOS with Vuforia sdk in project, scene is loading in not-VR mode. Log from xcode:
Read more >
Could not run Vuforia Application from Unity on iOS. Code ...
I have bought an Apple Developer Membership, sign my app with new (paid) signature and error has gone.
Read more >
Vuforia View on the App Store
Vuforia View allows users to access and share Augmented Reality experiences, that are rich with 3D content and IoT data on mobile devices...
Read more >
[Solved]-iOS Native Project Integrates Vuforia Unity Project
iOS Native Project Integrates Vuforia Unity Project · How to integrate the unity ios project into native ios swift project? · "config. ·...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found