xcode 无法合并Pod目标的user_target_xcconfig:[“Reanimated”,“hermes-engine”],单一建置设定CLANG_CXX_LIBRARY具有不同的值

bsxbgnwa  于 2022-11-18  发布在  其他
关注(0)|答案(5)|浏览(437)

我一直在我的项目中运行“pod install”来连接我的依赖项,但我一直得到这个错误:Can't merge user_target_xcconfig for pod targets: ["Reanimated", "hermes-engine"] Singular build setting CLANG_CXX_LIBRARY has different values.每次我运行pod。我试图解决这个错误,我已经删除并重新安装所有的pod文件,但没有运气。
想知道是否有人找到了解决办法?

sg24os4d

sg24os4d1#

更新愉快!reanimated 2.10.0 is released now,根据来自@Lauri-Harpf的及时评论,它似乎有所需的补丁- 2.10.0还包含预建的库(如reanimated 2.x所要求的),所以这个答案在很大程度上已经过时了,但在很好的方式。去抓住新的版本,如果可以的话,给repo + support Software Mansion给予一颗星星,因为他们在模块上做得很好。干杯

大多过时的回答如下:

React-天然0.69

答案似乎是更新react-native-reanimated,以便与react-native 0.69更兼容
对于react-native 0.69(对于react-native 0.70,请参见下文),没有正式的版本,但可以使用patch-package来集成修复程序,如下所述:
https://github.com/software-mansion/react-native-reanimated/issues/3326#issuecomment-1225057452
(基本上,您可以通过将其podspec文件更改为爱马仕所需的文件来强制更改 C++ 标准的重新激活使用,使用patch-package来干净地完成整个操作。

diff --git a/node_modules/react-native-reanimated/RNReanimated.podspec b/node_modules/react-native-reanimated/RNReanimated.podspec
index d53cb12..719f813 100644
--- a/node_modules/react-native-reanimated/RNReanimated.podspec
+++ b/node_modules/react-native-reanimated/RNReanimated.podspec
@@ -94,7 +94,7 @@ Pod::Spec.new do |s|
   }
   s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
   s.xcconfig               = {
-    "CLANG_CXX_LANGUAGE_STANDARD" => "c++14",
+    "CLANG_CXX_LANGUAGE_STANDARD" => "c++17",
     "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/glog\" \"$(PODS_ROOT)/#{folly_prefix}Folly\" \"${PODS_ROOT}/Headers/Public/React-hermes\" \"${PODS_ROOT}/Headers/Public/hermes-engine\"",
                                "OTHER_CFLAGS" => "$(inherited)" + " " + folly_flags  }

React-天然0.70

对于react-native 0.70,您需要使用react-native-reanimated的3.x版本,在撰写本文时,该版本还没有正式发布。
您可以通过安装react-native-reanimated@next版本来实现这一点,例如安装为yarn add react-native-reanimated@next,然后安装pod install,错误就应该消失了。

zlhcx6iw

zlhcx6iw2#

答案很简单,只需在podspec中设置CXX即可。

node_modules/react-native-reanimated/RNReanimated.podspec

更改为:

"CLANG_CXX_LANGUAGE_STANDARD" => "c++17",

信用卡=〉https:github.com/Shopify/react-native-skia/issues/405#issuecomment-1244302303

wkftcu5l

wkftcu5l3#

通过更新为重新激活的2.12.0,修复了SDK 46上构建的expoeas
仍会针对[“Reanimated”,“hermes-engine”]掷回有关CLANG_LANGUAGE_STANDARD和CLANG_LIBRARY的错误,但不再针对[“RNReanimated”,“Reanimated”,“hermes-engine”]掷回有关CLANG_LANGUAGE_STANDARD和CLANG_LIBRARY的错误。
在测试飞行中,构建在启动时崩溃,但现在不再这样做了。

qij5mzcb

qij5mzcb4#

我只是需要更新到v3.0.0-rc.3重新动画

vh0rcniy

vh0rcniy5#

我在安装时遇到此错误:

  • React Native :0.70.2
  • React导航v6
  • React-本机-重新激活2.10.0
  • “@React导航/抽屉”:“^6.5.0”,
  • “@React导航/本机”:“^6.0.13”,
  • “@React导航/本机堆栈”:“^6.9.0”,

React-Navigation还没有提到对Animate V3或Animate(下一个)的任何支持。
据我所知,动画在curton(v2和v3)背后的工作方式有一些重大变化
所以我像上面的帖子中提到的那样修改了c++版本,用patch-package制作了一个补丁,并像react-native文档中提到的那样为android和iOS构建了react-native应用程序。
我不知道在这一点上的时间补丁包如何工作,这里的一些视频,如果你也可能是新的:https://www.youtube.com/watch?v=2AVs-Yh1bS8&t=3s&ab_channel=BenAwad

相关问题