首页 > 解决方案 > Xcode - 找不到 -lBVLinearGradient 的库

问题描述

我已经搬到 Macbook Pro M1,我的 Xcode 版本是 12.5.1

运行我的应用程序时,出现以下错误:

ld: library not found for -lBVLinearGradient
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我也在使用react-native-linear-gradient(版本 2.5.6)库,与此错误有关。

标签: iosxcodereact-nativeclang

解决方案


我可以通过添加以下内容来修改我的 Podfile 来解决此问题:

post_install do |installer|
  ## Fix for XCode 12.5
  find_and_replace("../node_modules/react-native/React/CxxBridge/RCTCxxBridge.mm",
 "_initializeModules:(NSArray<id<RCTBridgeModule>> *)modules", "_initializeModules:(NSArray<Class> *)modules")
 find_and_replace("../node_modules/react-native/ReactCommon/turbomodule/core/platform/ios/RCTTurboModuleManager.mm",
 "RCTBridgeModuleNameForClass(module))", "RCTBridgeModuleNameForClass(Class(module)))")
end

def find_and_replace(dir, findstr, replacestr)
  Dir[dir].each do |name|
      text = File.read(name)
      replace = text.gsub(findstr,replacestr)
      if text != replace
          puts "Fix: " + name
          File.open(name, "w") { |file| file.puts replace }
          STDOUT.flush
      end
  end
  Dir[dir + '*/'].each(&method(:find_and_replace))
end

推荐阅读