Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not compile on newly created React Native app #353

Open
fr-an-k opened this issue Jul 2, 2023 · 1 comment
Open

Does not compile on newly created React Native app #353

fr-an-k opened this issue Jul 2, 2023 · 1 comment

Comments

@fr-an-k
Copy link

fr-an-k commented Jul 2, 2023

  • Project: nodejs-mobile-react-native
  • Version: 16.17.10
  • Mobile device: S933L
  • Mobile OS and version: Android 8.1
  • Development Node.js: v18.14.0
  • Development platform: x64, Microsoft Windows 11 Pro (10.0.22621 N/A Build 22621)
    "react": "18.2.0",
    "react-native": "0.72.1"

I created a new React Native project, added nodejs-mobile-react-native (yarn), started the debug app, but it fails:

ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it

The documentation does not mention how to avoid this.

Full output:

yarn run android 

yarn run v1.22.19
$ react-native run-android
warn Package nodejs-mobile-react-native contains invalid configuration: "dependency.platforms.ios.project" is not allowed. Please verify it's properly linked using "react-native config" command and contact the package maintainers about this.
info JS server already running.
info Installing the app...

> Task :nodejs-mobile-react-native:buildCMakeDebug[x86] FAILED
C/C++: ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.0.1/userguide/command_line_interface.html#sec:command_line_warnings
50 actionable tasks: 9 executed, 41 up-to-date
                                                                                                                          
info 💡 Tip: Make sure that you have set up your development environment correctly, by running react-native doctor. To read more about doctor command visit: https://github.com/react-native-community/cli/blob/main/packages/cli-doctor/README.md#doctor 


FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':nodejs-mobile-react-native:buildCMakeDebug[x86]'.
> com.android.ide.common.process.ProcessException: ninja: Entering directory `C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\.cxx\Debug\1k6s421m\x86'

  C++ build system [build] failed while executing:
      @echo off
      "C:\\Users\\frank\\AppData\\Local\\Android\\Sdk\\cmake\\3.22.1\\bin\\ninja.exe" ^
        -C ^
        "C:\\Users\\frank\\repos\\test_react_native_nodejs\\node_modules\\nodejs-mobile-react-native\\android\\.cxx\\Debug\\1k6s421m\\x86" ^
        nodejs-mobile-react-native-native-lib
    from C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android
  ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it

* Try:
> 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.

* Get more help at https://help.gradle.org

BUILD FAILED in 4s
error Failed to install the app. Command failed with exit code 1: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':nodejs-mobile-react-native:buildCMakeDebug[x86]'. > com.android.ide.common.process.ProcessException: ninja: Entering directory `C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\.cxx\Debug\1k6s421m\x86' C++ build system [build] failed while executing: @echo off "C:\\Users\\frank\\AppData\\Local\\Android\\Sdk\\cmake\\3.22.1\\bin\\ninja.exe" ^ -C ^ "C:\\Users\\frank\\repos\\test_react_native_nodejs\\node_modules\\nodejs-mobile-react-native\\android\\.cxx\\Debug\\1k6s421m\\x86" ^ nodejs-mobile-react-native-native-lib from C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it * Try: > 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. * Get more help at https://help.gradle.org BUILD FAILED in 4s.
info Run CLI with --verbose flag for more details.
error Command failed with exit code 1.

Cleaned and using npm install:

npm run android 


> test_react_native_nodejs@0.0.1 android
> react-native run-android

warn Package nodejs-mobile-react-native contains invalid configuration: "dependency.platforms.ios.project" is not allowed. Please verify it's properly linked using "react-native config" command and contact the package maintainers about this.
info JS server already running.
info Installing the app...

> Task :nodejs-mobile-react-native:processDebugManifest
package="com.janeasystems.rn_nodejs_mobile" found in source AndroidManifest.xml: C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\src\main\AndroidManifest.xml.
Setting the namespace via a source AndroidManifest.xml's package attribute is deprecated.
Please instead set the namespace (or testNamespace) in the module's build.gradle file, as described here: https://developer.android.com/studio/build/configure-app-module#set-namespace
This migration can be done automatically using the AGP Upgrade Assistant, please refer to https://developer.android.com/studio/build/agp-upgrade-assistant for more information.

> Task :nodejs-mobile-react-native:compileDebugJavaWithJavac

> Task :nodejs-mobile-react-native:configureCMakeDebug[arm64-v8a]
C/C++: CMake Warning (dev) in CMakeLists.txt:
C/C++:   No project() command is present.  The top-level CMakeLists.txt file must                                         
C/C++:   contain a literal, direct call to the project() command.  Add a line of
C/C++:   code such as
C/C++:     project(ProjectName)
C/C++:   near the top of the file, but after cmake_minimum_required().
C/C++:   CMake is pretending there is a "project(Project)" command on the first
C/C++:   line.
C/C++: This warning is for project developers.  Use -Wno-dev to suppress it.

> Task :nodejs-mobile-react-native:configureCMakeDebug[armeabi-v7a]
C/C++: CMake Warning (dev) in CMakeLists.txt:
C/C++:   No project() command is present.  The top-level CMakeLists.txt file must
C/C++:   contain a literal, direct call to the project() command.  Add a line of
C/C++:   code such as
C/C++:     project(ProjectName)
C/C++:   near the top of the file, but after cmake_minimum_required().
C/C++:   CMake is pretending there is a "project(Project)" command on the first
C/C++:   line.
C/C++: This warning is for project developers.  Use -Wno-dev to suppress it.

> Task :nodejs-mobile-react-native:configureCMakeDebug[x86]
C/C++: CMake Warning (dev) in CMakeLists.txt:
C/C++:   No project() command is present.  The top-level CMakeLists.txt file must
C/C++:   contain a literal, direct call to the project() command.  Add a line of
C/C++:   code such as
C/C++:     project(ProjectName)
C/C++:   near the top of the file, but after cmake_minimum_required().
C/C++:   CMake is pretending there is a "project(Project)" command on the first
C/C++:   line.
C/C++: This warning is for project developers.  Use -Wno-dev to suppress it.

> Task :nodejs-mobile-react-native:buildCMakeDebug[x86] FAILED
C/C++: ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.0.1/userguide/command_line_interface.html#sec:command_line_warnings
49 actionable tasks: 42 executed, 7 up-to-date
                                                                                                                          
info 💡 Tip: Make sure that you have set up your development environment correctly, by running react-native doctor. To read more about doctor command visit: https://github.com/react-native-community/cli/blob/main/packages/cli-doctor/README.md#doctor                                                                                                                     
                                                                                                                          
Note: C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\src\main\java\com\janeasystems\rn_nodejs_mobile\RNNodeJsMobileModule.java uses or overrides a deprecated API.                                   
Note: Recompile with -Xlint:deprecation for details.                                                                      
Note: C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\src\main\java\com\janeasystems\rn_nodejs_mobile\RNNodeJsMobileModule.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':nodejs-mobile-react-native:buildCMakeDebug[x86]'.
> com.android.ide.common.process.ProcessException: ninja: Entering directory `C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\.cxx\Debug\1k6s421m\x86'

  C++ build system [build] failed while executing:
      @echo off
      "C:\\Users\\frank\\AppData\\Local\\Android\\Sdk\\cmake\\3.22.1\\bin\\ninja.exe" ^
        -C ^
        "C:\\Users\\frank\\repos\\test_react_native_nodejs\\node_modules\\nodejs-mobile-react-native\\android\\.cxx\\Debug\\1k6s421m\\x86" ^
        nodejs-mobile-react-native-native-lib
    from C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android
  ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it

* Try:
> 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.

* Get more help at https://help.gradle.org

BUILD FAILED in 9s
error Failed to install the app. Command failed with exit code 1: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
Note: C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\src\main\java\com\janeasystems\rn_nodejs_mobile\RNNodeJsMobileModule.java uses or overrides a deprecated API. Note: Recompile with -Xlint:deprecation for details. Note: C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\src\main\java\com\janeasystems\rn_nodejs_mobile\RNNodeJsMobileModule.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':nodejs-mobile-react-native:buildCMakeDebug[x86]'. > com.android.ide.common.process.ProcessException: ninja: Entering directory `C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android\.cxx\Debug\1k6s421m\x86' C++ build system [build] failed while executing: @echo off "C:\\Users\\frank\\AppData\\Local\\Android\\Sdk\\cmake\\3.22.1\\bin\\ninja.exe" ^ -C ^ "C:\\Users\\frank\\repos\\test_react_native_nodejs\\node_modules\\nodejs-mobile-react-native\\android\\.cxx\\Debug\\1k6s421m\\x86" ^ nodejs-mobile-react-native-native-lib from C:\Users\frank\repos\test_react_native_nodejs\node_modules\nodejs-mobile-react-native\android ninja: error: '../../../../libnode/bin/x86/libnode.so', needed by '../../../../build/intermediates/cxx/Debug/1k6s421m/obj/x86/libnodejs-mobile-react-native-native-lib.so', missing and no known rule to make it * Try: > 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. * Get more help at https://help.gradle.org BUILD FAILED in 9s.
@1391735963
Copy link

so did i ,i waste 4 hour in this error,finally i found out it was due to i install this npm package,
look like author abandoned repair this bug

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants