You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When building an iOS app with eas build, the build fails due to duplicate TurboModule symbols generated by the codegen process. The issue seems to stem from two files in the library:
RNCompressorSpec.js
RNVideoCompressorSpec.js
Both define a TurboModule with the same native spec name: NativeCompressorSpec.
❌ duplicate symbol 'facebook::react::NativeCompressorSpecJSI::NativeCompressorSpecJSI(...)' in
┌─ libReactCodegen.a66
└─ libReactCodegen.a48
❌ duplicate symbol 'OBJC_METACLASS$_NativeCompressorSpecBase' in
❌ duplicate symbol 'OBJC_CLASS$_NativeCompressorSpecBase' in
...
❌ ld: 5 duplicate symbols
🧪 Steps to Reproduce
Install react-native-compressor in a project using Expo + EAS Build.
Run eas build -p ios
Observe that the build fails with duplicate symbol errors related to NativeCompressorSpec.
✅ Expected Behavior
The build should succeed without TurboModule symbol duplication.
💡 Suggested Fix
Either remove one of the duplicate spec files (likely RNVideoCompressorSpec.js), or
Rename one of the specs so both do not register the same NativeCompressorSpec.
This issue blocks EAS iOS builds unless developers manually patch the library using patch-package.
The text was updated successfully, but these errors were encountered:
When building an iOS app with eas build, the build fails due to duplicate TurboModule symbols generated by the codegen process. The issue seems to stem from two files in the library:
RNCompressorSpec.js
RNVideoCompressorSpec.js
Both define a TurboModule with the same native spec name: NativeCompressorSpec.
❌ duplicate symbol 'facebook::react::NativeCompressorSpecJSI::NativeCompressorSpecJSI(...)' in
┌─ libReactCodegen.a66
└─ libReactCodegen.a48
❌ duplicate symbol 'OBJC_METACLASS$_NativeCompressorSpecBase' in
❌ duplicate symbol 'OBJC_CLASS$_NativeCompressorSpecBase' in
...
❌ ld: 5 duplicate symbols
🧪 Steps to Reproduce
Install react-native-compressor in a project using Expo + EAS Build.
Run eas build -p ios
Observe that the build fails with duplicate symbol errors related to NativeCompressorSpec.
✅ Expected Behavior
The build should succeed without TurboModule symbol duplication.
💡 Suggested Fix
Either remove one of the duplicate spec files (likely RNVideoCompressorSpec.js), or
Rename one of the specs so both do not register the same NativeCompressorSpec.
This issue blocks EAS iOS builds unless developers manually patch the library using patch-package.
The text was updated successfully, but these errors were encountered: