-
Notifications
You must be signed in to change notification settings - Fork 21
Open
Description
Environment
- OS: Windows 11
- React Native: 0.73.x (via Expo SDK 50)
- Node: v18+
- Android NDK: 27.1.12297006
- CMake: 3.22.1
react-native-libsodium: latest
Problem
I'm unable to build the Android project due to a syntax error in the CMake configuration:
CMake Error at CMakeLists.txt:42 (add_library):
Syntax error in cmake code when parsing string
C:\Projects\abstraxion-expo-demo\node_modules/react-native/ReactCommon/jsi/jsi/jsi.cpp
Invalid character escape '\P'.
This is caused by backslashes in Windows paths being interpreted as escape characters by CMake (e.g. \P).
Temporary Workaround
No clean workaround yet besides manual patching CMakeList.txt file:
# Convert NODE_MODULES_DIR to a CMake-friendly path
file(TO_CMAKE_PATH "${NODE_MODULES_DIR}" SAFE_NODE_MODULES_DIR)
# Construct the JSI CPP path using the safe path and forward slashes
set(JSI_CPP_PATH "${SAFE_NODE_MODULES_DIR}/react-native/ReactCommon/jsi/jsi/jsi.cpp")
# here we define a library target called "libsodium"
# which will be built from the listed source files
add_library(libsodium
SHARED
"${JSI_CPP_PATH}" # Use the corrected path variable
../cpp/react-native-libsodium.cpp
../cpp/react-native-libsodium.h
cpp-adapter.cpp
)
I would appreciate a fix or workaround that supports Windows dev environments out of the box.
Thanks!
BurntVal and LiamKarlMitchell
Metadata
Metadata
Assignees
Labels
No labels