DEV Community

Cover image for Fix RCTDefines.h File Not Found in React Native (Xcode)
PEAKIQ
PEAKIQ

Posted on • Originally published at peakiq.in

Fix RCTDefines.h File Not Found in React Native (Xcode)

Originally published on PEAKIQ


Fix: “Multiple commands produce” error (RNWifi)

Temporary Fix for RNWifi

This fix is specific to RNWifi. Your case may differ slightly, so it’s recommended to verify against the original source if needed.


Xcode Configuration Steps

Follow these steps to resolve the issue from Xcode:

  1. Open Xcode
  2. Navigate to Project Navigator → Libraries → RNWifi
  3. Select Build Settings
  4. Under Targets, choose the first target
  5. Scroll down to Search Paths
  6. Open Header Search Paths
  7. Add the following path:
${SRCROOT}/../../../ios/Pods/Headers
Enter fullscreen mode Exit fullscreen mode
  1. Ensure the path is set to recursive
  2. Clean the build using: Cmd + Shift + K
  3. Rebuild the project using: Cmd + B

Podfile Fix (RNWifi Conflict)

To resolve the “Multiple commands produce” issue, update your Podfile with the following configuration:

use_flipper!

post_install do |installer|
  react_native_post_install(installer)
  __apply_Xcode_12_5_M1_post_install_workaround(installer)

  installer.pods_project.targets.each do |target|

    # Remove conflicting targets
    # RNWifi is the target name causing the issue
    targets_to_ignore = %w(React RNWifi)

    if targets_to_ignore.include?(target.name)
      target.remove_from_project
      next
    end

    # Set minimum iOS deployment target
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
    end
  end
end
Enter fullscreen mode Exit fullscreen mode

Notes

  • This workaround removes duplicate build targets that cause Xcode conflicts
  • After updating the Podfile, run:
pod install
Enter fullscreen mode Exit fullscreen mode
  • Finally, clean and rebuild the project to apply changes

Top comments (0)