React-native-blur: Failed to compile in Xcode: symbol(s) not found for architecture arm64

Created on 20 Jan 2017  Â·  19Comments  Â·  Source: Kureev/react-native-blur

I don't know if it's the cause, but I upgraded as npm suggested, from react-native-blur 1.2.1 to 1.3. Realized it doesn't work on RN 0.37 and I'm not ready to upgrade to RN 0.40 yet, so I downgraded react-native-blur back to 1.2.1. On compiling in Xcode to run my app on device, I get the following error:

Ld /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/APPNAME.app/APPNAME normal arm64
    cd /Users/USER/Documents/code/APPNAME/ios
    export IPHONEOS_DEPLOYMENT_TARGET=8.0
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk -L/Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos -F/Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos -filelist /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Intermediates/APPNAME.build/Debug-iphoneos/APPNAME.build/Objects-normal/arm64/APPNAME.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -miphoneos-version-min=8.0 -Xlinker -object_path_lto -Xlinker /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Intermediates/APPNAME.build/Debug-iphoneos/APPNAME.build/Objects-normal/arm64/APPNAME_lto.o -Xlinker -no_deduplicate -fembed-bitcode-marker -fobjc-arc -fobjc-link-runtime -ObjC -lc++ /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libReact.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTActionSheet.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTGeolocation.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTImage.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTLinking.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTNetwork.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTSettings.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTText.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTVibration.a /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/libRCTWebSocket.a -lSafariViewManager -lReact-Native-Webview-Bridge -lRealmReact -lc++ -lz -lRNVectorIcons -lRNBlur -Xlinker -dependency_info -Xlinker /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Intermediates/APPNAME.build/Debug-iphoneos/APPNAME.build/Objects-normal/arm64/APPNAME_dependency_info.dat -o /Users/USER/Library/Developer/Xcode/DerivedData/APPNAME-bifiexuwlrscqffroslswjnvqvfq/Build/Products/Debug-iphoneos/APPNAME.app/APPNAME

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

I've tried rm -rf ~/Library/Developer/Xcode/DerivedData/ to delete cache, as well as react-native unlink react-native-blur and link again. Same error.

Any help would be appreciated.

Most helpful comment

A fix for it...
go Libraries => RNBlur => select TARGETS => Build Phases => add blurAmount.m to Compile Sources.. somebody forgot to put it there..
hope it helps.. cheers!
edit: RN 0.39 RNBlur 1.2.1

All 19 comments

Note that I've been working on my app only on the iOS Simulator so far, and it has always compiled without error. This error shows only when I tried targeting the physical iPhone device in Xcode.

Sorry, 1.3.0 is broken, use 1.2.* instead

I am on 1.2.1. Note again that I downgraded 1.3 to 1.2.1, I don't know if that's the cause.

I tried removing react-native-blur and my app builds for my iPhone device. So no other library I use is broken. I'm on RN 0.37.

Same situation... upgraded then downgraded... now here.

Seems to be only when doing a "release" build.

Yes. Only release build, debug build was fine.
On Tue, Jan 31, 2017 at 2:07 PM Jack Read notifications@github.com wrote:

Same situation... upgraded then downgraded... now here.

Seems to be only when doing a "release" build.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/react-native-community/react-native-blur/issues/148#issuecomment-276508632,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADoJShlneMaTtnrtBqZKWORQ2hw3XIyXks5rX7CsgaJpZM4Lo3Jd
.

>

Cheers,
Gary

Most likely you'll have to unlink and link again once you downgraded to < 0.40.

Tried that already. Even removing and re adding by NPM. Doesn't work.

On Wed, Feb 1, 2017 at 2:01 AM Alexey notifications@github.com wrote:

Most likely you'll have to unlink and link again once you downgraded to <
0.40.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/react-native-community/react-native-blur/issues/148#issuecomment-276617724,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADoJSsgp2phicNZo-lrLoIadUb8FqDQDks5rYFf7gaJpZM4Lo3Jd
.

>

Cheers,
Gary

Same here ^^

Hm, it works on the blank RN 0.37 project + react-native-blur 1.2.1. Are you sure you unlinked it properly?

via react-native unlink; react-native link

Thanks,
Gary Fung

On Feb 1, 2017, 1:10 PM -0800, Alexey notifications@github.com, wrote:

Hm, it works on the blank RN 0.37 project + react-native-blur 1.2.1. Are you sure you unlinked it properly?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Did you unlink before downgrading? Otherwise it may leave some garbage / don't unlink properly

Had the same issue,
For some reason the files BlurAmount.h/BlurAmount.h were not included in RNBlur.xcodeproj

Your react-native-blur may is not the latest version.
Try to update every react* modules into the latest version, and unlink then link everything.

same problem here!

A fix for it...
go Libraries => RNBlur => select TARGETS => Build Phases => add blurAmount.m to Compile Sources.. somebody forgot to put it there..
hope it helps.. cheers!
edit: RN 0.39 RNBlur 1.2.1

@DevBkIL thanks! that solved my problem!

@DevBkIL Argh, thanks! That was exactly my issue

@DevBkIL Where is the blurAmount.m?? Cant find it

A fix for it...
go Libraries => RNBlur => select TARGETS => Build Phases => add blurAmount.m to Compile Sources.. somebody forgot to put it there..
hope it helps.. cheers!
edit: RN 0.39 RNBlur 1.2.1

It is fixed in 2.0.0 btw

Was this page helpful?
0 / 5 - 0 ratings