upgrade-support icon indicating copy to clipboard operation
upgrade-support copied to clipboard

Getting errors in cstdlib in XCode 11.4 when compiling react-native project after upgrading from 0.60.5 to 0.62.1

Open vinod20191992 opened this issue 4 years ago • 19 comments

Environment

System: OS: macOS 10.15.3 CPU: (4) x64 Intel(R) Core(TM) i7-4558U CPU @ 2.80GHz Memory: 5.90 GB / 16.00 GB Shell: 3.2.57 - /bin/bash Binaries: Node: 10.16.3 - /usr/local/bin/node Yarn: Not Found npm: 6.9.0 - /usr/local/bin/npm Watchman: 4.9.0 - /usr/local/bin/watchman Managers: CocoaPods: 1.9.1 - /usr/local/bin/pod SDKs: iOS SDK: Platforms: iOS 13.4, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2 Android SDK: API Levels: 25, 28, 29 Build Tools: 28.0.3, 29.0.1 System Images: android-28 | Google APIs Intel x86 Atom, android-29 | Google APIs Intel x86 Atom Android NDK: Not Found IDEs: Android Studio: 3.4 AI-183.6156.11.34.5692245 Xcode: 11.4/11N132i - /usr/bin/xcodebuild Languages: Java: 1.8.0_212 - /usr/bin/javac Python: 2.7.16 - /usr/bin/python npmPackages: @react-native-community/cli: Not Found react: 16.11.0 => 16.11.0 react-native: 0.62.1 => 0.62.1 npmGlobalPackages: react-native: Not Found

Upgrading version

From 0.60.5 to 0.62.1

Description

I had upgraded my react-native project from version 0.60.5 to version 0.62.1 as per instructions given here react-native-community/upgrade-helper#191

After upgrading when i run my project from XCode 11.4 then it throws errors in cstdlib as given in below screenshot:

Screenshot 2020-04-09 at 9 14 38 AM Screenshot 2020-04-09 at 9 14 23 AM

Reproducible demo

Podfile

platform :ios, '10.0' require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

def add_flipper_pods! version = '~> 0.33.1' pod 'FlipperKit', version, :configuration => 'Debug' pod 'FlipperKit/FlipperKitLayoutPlugin', version, :configuration => 'Debug' pod 'FlipperKit/SKIOSNetworkPlugin', version, :configuration => 'Debug' pod 'FlipperKit/FlipperKitUserDefaultsPlugin', version, :configuration => 'Debug' pod 'FlipperKit/FlipperKitReactPlugin', version, :configuration => 'Debug' end

def flipper_post_install(installer) installer.pods_project.targets.each do |target| if target.name == 'YogaKit' target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '4.1' end end end end

target 'MedicBleep' do pod 'FBLazyVector', :path => "../node_modules/react-native/Libraries/FBLazyVector" pod 'FBReactNativeSpec', :path => "../node_modules/react-native/Libraries/FBReactNativeSpec" pod 'RCTRequired', :path => "../node_modules/react-native/Libraries/RCTRequired" pod 'RCTTypeSafety', :path => "../node_modules/react-native/Libraries/TypeSafety"

pod 'React', :path => '../node_modules/react-native/' pod 'React-Core', :path => '../node_modules/react-native/' pod 'React-CoreModules', :path => '../node_modules/react-native/React/CoreModules' pod 'React-Core/DevSupport', :path => '../node_modules/react-native/'

pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS' pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation' pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob' pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image' pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS' pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network' pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings' pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text' pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration' pod 'React-Core/RCTWebSocket', :path => '../node_modules/react-native/'

pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact' pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi' pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor' pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector'

pod 'ReactCommon/callinvoker', :path => "../node_modules/react-native/ReactCommon" pod 'ReactCommon/turbomodule/core', :path => "../node_modules/react-native/ReactCommon" pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga', :modular_headers => true

pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec' pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec' pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec' pod 'react-native-bg-thread', :path => '../node_modules/react-native-bg-thread/react-native-bg-thread.podspec'

pod 'Firebase/Core', '~> 6.13.0' pod 'Firebase/Auth', '~> 6.13.0'

pod 'RNDateTimePicker', :path => '../node_modules/@react-native-community/datetimepicker/RNDateTimePicker.podspec'

pod 'ReactNativeAudioToolkit', :path => '../node_modules/@react-native-community/audio-toolkit'

permissions_path = '../node_modules/react-native-permissions/ios' pod 'Permission-Camera', :path => "#{permissions_path}/Camera.podspec" pod 'Permission-Microphone', :path => "#{permissions_path}/Microphone.podspec" pod 'Permission-PhotoLibrary', :path => "#{permissions_path}/PhotoLibrary.podspec" pod 'Permission-MediaLibrary', :path => "#{permissions_path}/MediaLibrary.podspec"

pod 'RNSVG', :path => '../node_modules/react-native-svg' pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'

pod 'TwilioVoice', '5.1.1'

pod 'EmbraceIO' pod 'RNEmbrace', :path => '../node_modules/react-native-embrace'

target 'MedicBleepTests' do inherit! :complete end

use_native_modules!

add_flipper_pods! post_install do |installer| flipper_post_install(installer) end end

target 'MedicBleep-tvOS' do

target 'MedicBleep-tvOSTests' do inherit! :search_paths end

end

vinod20191992 avatar Apr 09 '20 03:04 vinod20191992

I met the same issue here, I am not familiar with Xcode and c++, but these errors seems to be related to a header file conflict between the following two files: 1.'/ios/Pods/Flipper-Folly/folly/portability/Stdlib.h' 2.'Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/stdlib.h'

edit: It's ok now...I just delete my project local copy and clone it from remote repo, then upgrade it to 0.62.2, I don't know why, but this time nothing is wrong, maybe some strange dirty cache caused this issue. 🤷‍♂️

ps. at this time, I didn't upgrade react native from 0.60.5 to 0.62.2 directly, first I upgrade it to 0.61.0 and then upgrade it to 0.62.2.

YaoHuiJi avatar Apr 16 '20 14:04 YaoHuiJi

I'm encountering this, so far not solved. Anyone has a better pointer how to solve this (possible cache) issue without having to remove and clone for again?

jdegger avatar May 08 '20 09:05 jdegger

+1

theRealSheng avatar Jun 12 '20 11:06 theRealSheng

Same issue here, any updates?

apklinker avatar Jun 16 '20 15:06 apklinker

?

iammxrn avatar Jun 30 '20 16:06 iammxrn

Still have no luck? Really??

corelmax avatar Aug 01 '20 09:08 corelmax

same

danghung24031992 avatar Aug 13 '20 09:08 danghung24031992

Yep same

TNielsen92pro avatar Aug 17 '20 18:08 TNielsen92pro

Somehow I was able to get mine working, but TBH I don't remember how. I think I restarted the update process from scratch and did it right the second time... Sorry that's probably not helpful to anyone.

apklinker avatar Aug 18 '20 21:08 apklinker

Same issue here

BruceSuperProgramer avatar Aug 26 '20 03:08 BruceSuperProgramer

I fixed the issue by commenting out the following lines:

add_flipper_pods!
  post_install do |installer|
    flipper_post_install(installer)
  end
end

It seems that flipper somehow uses a lib that overrides the XCode cstlib so that the realm syntax is not recognized. I'm using an old version of Realm (3.3.0) so hopefully this is fixed in newer editions.

Hope this helps someone!

TNielsen92pro avatar Aug 26 '20 07:08 TNielsen92pro

I fixed the issue by commenting out the following lines:

add_flipper_pods!
  post_install do |installer|
    flipper_post_install(installer)
  end
end

It seems that flipper somehow uses a lib that overrides the XCode cstlib so that the realm syntax is not recognized. I'm using an old version of Realm (3.3.0) so hopefully this is fixed in newer editions.

Hope this helps someone!

This code no longer exists in 0.64.0 but the error persists.

flikQ avatar Apr 29 '21 11:04 flikQ

I'm encountering this, so far not solved. Anyone has a better pointer how to solve this (possible cache) issue without having to remove and clone for again?

Did you ever find a solution? It's happening for me on 0.64.0

flikQ avatar Apr 29 '21 11:04 flikQ

Did anyone ever find a solution? It's happening for me on 0.64.1. Need Help!

zcgong avatar May 12 '21 03:05 zcgong

Try this in your Pods :

use_flipper!('Flipper-Folly' => '2.5.3', 'Flipper' => '0.87.0', 'Flipper-RSocket' => '1.3.1' ) post_install do |installer| flipper_post_install(installer) end

theRealSheng avatar May 12 '21 06:05 theRealSheng

Did anyone ever find a solution? It's happening for me on 0.64.1. Need Help!

IM-CrazyDeveloper avatar Jun 01 '21 12:06 IM-CrazyDeveloper

Still experiencing this. 0.64.0 / 0.64.2 & 0.65.0

flikQ avatar Aug 18 '21 14:08 flikQ

Did anyone ever find a solution? It's happening for me on 0.64.1. Need Help!

yes this issue comes on this version, I used downgraded version

IM-CrazyDeveloper avatar Aug 18 '21 14:08 IM-CrazyDeveloper

Did anyone ever find a solution? It's happening for me on 0.64.1. Need Help!

yes this issue comes on this version, I used downgraded version

Sadly downgrading isn't an option for us due to a combination of required libraries that need either 0.64 and above. I wish we knew the root causes so we could fix/strip that out.

flikQ avatar Aug 18 '21 15:08 flikQ