margelo / react-native-bignumber

🔢 The fastest Big Number library for React Native
https://margelo.io
MIT License
342 stars 12 forks source link

Causes build errors with Expo's EAS Build #40

Open danscan opened 2 years ago

danscan commented 2 years ago

Kudos on this awesome library. I'm so excited to see and support the work from Margelo – you all make an incredible team.


I just encountered a strange issue I thought I'd make you aware of:

react-native-bignumber is causing the following Android build error in EAS build:

No signature of method: build_3f07tkrdhml72rs2c7ujzo3ms.android() is applicable for argument types: (build_3f07tkrdhml72rs2c7ujzo3ms$_run_closure2) values: [build_3f07tkrdhml72rs2c7ujzo3ms$_run_closure2@55bc1bb5]

Reproduced with versions 0.1.5 and 0.1.3.

Relevant expanded build logs:

> Configure project :expo
Using expo modules
...
> Configure project :react-native-bignumber
BigNumber: node_modules/ found at: /home/expo/workingdir/build/node_modules
[stderr] FAILURE: Build failed with an exception.
[stderr] * Where:
[stderr] Build file '/home/expo/workingdir/build/node_modules/react-native-bignumber/android/build.gradle' line: 88
[stderr] * What went wrong:
[stderr] A problem occurred evaluating project ':react-native-bignumber'.
[stderr] > No signature of method: build_3f07tkrdhml72rs2c7ujzo3ms.android() is applicable for argument types: (build_3f07tkrdhml72rs2c7ujzo3ms$_run_closure2) values: [build_3f07tkrdhml72rs2c7ujzo3ms$_run_closure2@55bc1bb5]
[stderr] * Try:
[stderr] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[stderr] * Get more help at https://help.gradle.org
[stderr] BUILD FAILED in 1m 9s
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.9/userguide/command_line_interface.html#sec:command_line_warnings
Error: Gradle build failed with unknown error. Please see logs for the "Run gradlew" phase.
mrousavy commented 2 years ago

Hey!

I'm so excited to see and support the work from Margelo – you all make an incredible team

Thanks man, we're really excited about this too. Way more to come soon!

react-native-bignumber is causing the following Android build error in EAS build

Hmm, that's weird and it looks like a generated method name.

  1. Does it build fine locally?
  2. Do you have some way to completely clean/nuke gradle/android build cache? It looks like a cache issue to me
Szymon20000 commented 2 years ago

Looks like problem with gradle/android.build.tools version.

Szymon20000 commented 2 years ago

I think we need at least 4.2 classpath 'com.android.tools.build:gradle:4.2.0'

danscan commented 2 years ago

Encountering a build issue with iOS builds in EAS now as well, using react-native-bignumber@0.1.7:

Relevant fastlane output:

› Compiling App » AppDelegate.mm
› Linking   App » App
❌  Undefined symbols for architecture arm64
┌─ Symbol: _BN_bn2hex
└─ Referenced from: margelo::MGBigNumHelper::bn2Str(bignum_st*, int, int) in libreact-native-bignumber.a(MGBigNumHelper.o)

❌  ld: symbol(s) not found for architecture arm64

❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)

▸ ** ARCHIVE FAILED **
▸ The following build commands failed:
▸   Ld /Users/expo/Library/Developer/Xcode/DerivedData/App-eeirpdkkxugpnadagjxlytxgexov/Build/Intermediates.noindex/ArchiveIntermediates/App/InstallationBuildProductsLocation/Applications/App.app/App normal (in target 'App' from project 'App')
▸ (1 failure)