架构x86_64的未定义符号:“ _ OBJC_CLASS _ $ _ RCTImageLoader”

时间:2020-01-16 08:45:40

标签: ios xcode react-native

经过大量测试,我的应用无法在 iOS 上运行。

我遇到此错误:

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

我使用:

react: 16.12.0
react-native: 0.60.6

3 个答案:

答案 0 :(得分:2)

嘿,我从另一个来源找到了解决方法here 我不得不添加另一个名为“RNCMaskedView”的框架以及“RNSScreen”

pre_install do |installer|
 installer.pod_targets.each do |pod|
   if pod.name.eql?('RNScreens') || pod.name.eql?('RNCMaskedView')
     def pod.build_type
       Pod::BuildType.static_library
     end
   end
  end
end

如果错误是从其他框架抛出的,您可以尝试添加“RCTImageLoader”并跟进其他框架

在pod文件底部添加代码即可 保存 打开终端,转到项目中的 ios 文件夹并运行“pod install”

然后回到Xcode,清除你的build cmd + shift + k 给构建

应该没问题

答案 1 :(得分:0)

您似乎正在尝试在模拟器上运行该应用程序,而RCTImageResizer的库不适用于模拟器。

能否请您尝试在设备上运行它并进行检查。

答案 2 :(得分:0)

删除“use_frameworks!”并在 pod 文件中使用“cocoapods-user-defined-build-types”插件,该插件允许 Podfile 指定应如何构建每个 Pod(或多个 Pod)(例如作为动态框架)。

plugin 'cocoapods-user-defined-build-types'

enable_user_defined_build_types!

target "CoffeeApp" do
    pod 'Alamofire'
    pod "SwiftyJSON", :build_type => :dynamic_framework

https://github.com/joncardasis/cocoapods-user-defined-build-types

它的工作..