Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to solve the problem of "folly/Portability.h" and "File .../main.jsbundle does not exist" in React Native?

When I want to compile my IOS application for production I have this error that appears: 'folly/Portability.h' file not found and echo 'error:this File .../main.jsbundle does not exist. This must be a bug with I have searched the Internet to solve this problem but I can't solve it

here is the information of react-native:

  React Native Environment Info:
System:
  OS: macOS 10.14.4
  CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
  Memory: 38.35 MB / 8.00 GB
  Shell: 3.2.57 - /bin/bash
Binaries:
  Node: 10.15.0 - /usr/local/bin/node
  npm: 6.9.0 - /usr/local/bin/npm
  Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
  iOS SDK:
    Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
  Android SDK:
    API Levels: 21, 22, 24, 25, 26, 27, 28
    Build Tools: 25.0.0, 26.0.0, 26.0.2, 26.0.3, 27.0.1, 27.0.3, 28.0.3
    System Images: android-18 | Google APIs Intel x86 Atom, android-19 | Google APIs Intel x86 Atom, android-22 | Google APIs Intel x86 Atom, android-24 | Google APIs Intel x86 Atom, android-25 | Google APIs ARM EABI v7a, android-25 | Google APIs Intel x86 Atom, android-27 | Google APIs Intel x86 Atom, android-28 | Intel x86 Atom_64, android-28 | Google Play Intel x86 Atom
IDEs:
  Android Studio: 3.4 AI-183.5429.30.34.5452501
  Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
npmPackages:
  react: 16.6.3 => 16.6.3 
  react-native: ^0.59.6 => 0.59.6 
npmGlobalPackages:
  react-native-cli: 2.0.1
  react-native-rename: 2.4.1

here is the configuration of my Pods

platform :ios, '9.0'

target 'AppXYZ' do

  # Pods for AppXYZ

  # Required by RNFirebase
  pod 'Firebase/Core', '~> 5.15.0'
  pod 'Firebase/Messaging', '~> 5.15.0'

  pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'
  pod 'react-native-netinfo', :path => '../node_modules/@react-native-community/netinfo'

  pod 'React', :path => '../node_modules/react-native'
  pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
  pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'
  # Third party deps podspec link
  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'

  target 'AppXYZTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

To solve the first problem ('folly/Portability.h') I found on the internet this ( but it doesn't work)

      # Third party deps podspec link
  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'

and to solve the second problem I found this: react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios/assets but it doesn't work, it generates another error for me:

Loading dependency graph...error jest-haste-map: Haste module naming collision:
  Duplicate module name: react-native
  Paths: .../ios/Pods/React/package.json collides with .../node_modules/react-native/package.json

these lines will have to solve this problem (but it does not solve)

  pod 'React', :path => '../node_modules/react-native'
  pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
  pod 'RNGestureHandler', :path => '../node_modules/react-native-gesture-handler'

someone can help me because I'm stuck

like image 825
diego Avatar asked Apr 22 '19 22:04

diego


1 Answers

just drag & drop Folly folder to "Header Search Paths" box in Build Settings tab from Pods project setting and rebuild. see pic below

search header path setting

like image 76
taolao Avatar answered Oct 28 '22 04:10

taolao