Repository navigation
Replies: 1 comment
|
Hey, feel free to open a PR that fixes these issues. We mainly use Macs for development, so we can't reproduce this easily. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Version v0.3.3
Overview :
Persistent build failures on Windows caused by the 250-character path limit (MAX_PATH) when compiling native components. The deeply nested folder structure of the monorepo, combined with long filenames generated by Nitrogen, consistently exceeds this limit during the Android release build.
The Problem :
On Windows, even with LongPathsEnabled, certain native build tools (CMake/Ninja) and internal NDK APIs can fail or emit warnings when object file paths exceed 250 characters. In this library, generated files like JVariant_QrSignIn_PinSignIn_InputSignIn_GoogleSignIn.cpp in the nitrogen/generated directory often push the total path length over the limit, leading to:
ninja: error: manifest 'build.ninja' still dirty after 100 tries
CMake warnings about object file directories being too long.
Compilation errors for specific .o files.
Proposed Fixes :
CMake Path Limit Increase: Added set(CMAKE_OBJECT_PATH_MAX 500) in android/CMakeLists.txt
to instruct CMake to use a more permissive internal path calculation for object files on Windows.
buildStagingDirectory Redirection: To definitively solve the issue, we found that redirecting the buildStagingDirectory for the native build to a shorter, non-nested path (e.g., D:/t-i/cxx) is necessary for the Android Gradle Plugin.
What Works
What Doesn't Work (Without this fix)
All reactions