sdk_version: "current", arch: { arm: { instruction_set: "arm", }, },转为CMakeLists
时间: 2024-03-15 18:46:17 浏览: 159
将sdk_version: "current", arch: { arm: { instruction_set: "arm", }, },转为CMakeLists,你可以在CMakeLists.txt文件中添加以下内容:
```
if(${ANDROID_ABI} STREQUAL "armeabi-v7a")
set(CMAKE_ANDROID_ARCH_ABI "arm")
set(CMAKE_ANDROID_ARM_MODE ON)
set(CMAKE_ANDROID_ARM_NEON ON)
endif()
```
这样就定义了一个针对 armeabi-v7a 架构的配置,并设置了 ARM 指令集和 NEON 指令集的支持。你需要根据你的实际需要修改 CMakeLists.txt 文件中的参数,以便正确地配置你的项目。
相关问题
sdk_version: "current", arch: { arm: { instruction_set: "arm", }, },
这段代码看起来像是一个配置文件或者脚本文件,用来指定当前的 SDK 版本和 ARM 架构的指令集。其中,sdk_version 指定了当前使用的 SDK 版本是最新的版本,而 arch 则指定了针对 ARM 架构的指令集进行编译。在 ARM 架构上,不同的处理器可能会采用不同的指令集,例如 ARMv7、ARMv8 等等,因此需要在编译时指定所需的指令集。这里指定了 arm 指令集,但没有指定具体的 ARM 版本,因此可能需要根据具体的情况进行调整。
android_app { name: "DesensitiseJNI", srcs: ["**/*.java"], sdk_version: "current", jni_libs: ["libDesensitisejni"], } // Build JNI Shared Library cc_library_shared { name: "libDesensitisejni", cflags: [ "-Werror", "-Wno-error=unused-parameter", ], include_dirs: ["."], srcs: ["jni/Jni_Desensitis.cpp"], shared_libs: [ "libEGL", "libGLESv2", "libjpeg", "libprotobuf", "libTSDesensitizationAlgorithm", "libecarx_engine", ], sdk_version: "current", arch: { arm: { instruction_set: "arm", }, }, }转为CMake
以下是将上述 Android.mk 转换为 CMakeLists.txt 的示例:
```
cmake_minimum_required(VERSION 3.4.1)
add_library(DesensitiseJNI SHARED
src/main/java/com/example/DesensitiseJNI.java
jni/Jni_Desensitis.cpp)
target_include_directories(DesensitiseJNI PRIVATE .)
target_link_libraries(DesensitiseJNI
libEGL
libGLESv2
libjpeg
libprotobuf
libTSDesensitizationAlgorithm
libecarx_engine)
target_compile_options(DesensitiseJNI PRIVATE
-Werror
-Wno-error=unused-parameter)
set_target_properties(DesensitiseJNI PROPERTIES
CXX_STANDARD 11
CXX_STANDARD_REQUIRED ON)
# Set the ABI for the library
set_target_properties(DesensitiseJNI PROPERTIES
ANDROID_ARM_MODE "arm")
```
请注意,这只是一个示例,你需要根据你的项目结构和需要进行适当的修改。
阅读全文