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

0.61.2 -> 0.62.2 Build Error with enableHermes

Open phantom1299 opened this issue 5 years ago • 2 comments

Environment

System:
    OS: Windows 10 10.0.17763
    CPU: (4) x64 Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
    Memory: 6.72 GB / 15.92 GB
  Binaries:
    Node: 10.15.3 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.16.0 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.4.1 - C:\Program Files\nodejs\npm.CMD
    Watchman: 4.9.4 - D:\Dev\tools\bin\watchman.EXE
  SDKs:
    Android SDK:
      API Levels: 21, 23, 24, 25, 26, 27, 28
      Build Tools: 23.0.1, 25.0.0, 25.0.1, 25.0.2, 25.0.3, 26.0.0, 26.0.1, 26.0.2, 26.0.3, 27.0.0, 27.0.2, 27.0.3, 28.0.0, 28.0.3
      System Images: android-23 | Intel x86 Atom_64, android-23 | Google APIs Intel x86 Atom, android-23 | Google APIs Intel x86 Atom_64, android-27 | Google Play Intel x86 Atom, android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom
      Android NDK: Not Found
  IDEs:
    Android Studio: Version  3.5.0.0 AI-191.8026.42.35.5791312
  Languages:
    Java: 1.8.0_151
    Python: 3.7.3
  npmPackages:
    @react-native-community/cli: Not Found
    react: 16.11.0 => 16.11.0
    react-native: 0.62.2 => 0.62.2
  npmGlobalPackages:
    *react-native*: Not Found

Upgrading version

0.61.2 -> 0.62.2

Description

When trying to build my app with ./gradlew bundleRelease I get the following report

> Task :app:bundleReleaseJsAndAssets FAILED

FAILURE: Build failed with an exception.

* Where:
Script '<path_to_project>\node_modules\react-native\react.gradle' line: 165

* What went wrong:
Execution failed for task ':app:bundleReleaseJsAndAssets'.
> Process 'command 'cmd'' finished with non-zero exit value -1073741515

My app builds fine in debug mode.

Reproducible demo

I cannot reproduce it right now. I noticed that react.gradle contains the following code at line 165

                    exec {
                        if (targetName.toLowerCase().contains("release")) {
                            // Can't use ?: since that will also substitute valid empty lists
                            hermesFlags = config.hermesFlagsRelease
                            if (hermesFlags == null) hermesFlags = ["-O", "-output-source-map"]
                        } else {
                            hermesFlags = config.hermesFlagsDebug
                            if (hermesFlags == null) hermesFlags = []
                        }

                        if (Os.isFamily(Os.FAMILY_WINDOWS)) {
                            commandLine("cmd", "/c", getHermesCommand(), "-emit-binary", "-out", hbcTempFile, jsBundleFile, *hermesFlags)
                        } else {
                            commandLine(getHermesCommand(), "-emit-binary", "-out", hbcTempFile, jsBundleFile, *hermesFlags)
                        }
                    }

I suspect that something goes wrong at this line commandLine("cmd", "/c", getHermesCommand(), "-emit-binary", "-out", hbcTempFile, jsBundleFile, *hermesFlags)

phantom1299 avatar Apr 16 '20 18:04 phantom1299

Any ideas folks, I currently got my release without hermes, but I would prefer hermes for obvious reasons. Can't figure out what the cause is, since the error tells realy nothing to me.

phantom1299 avatar May 11 '20 07:05 phantom1299

im facing the same issue rn, is there any solution for this issue ? @phantom1299

pramahaditamaputra avatar Feb 22 '23 10:02 pramahaditamaputra