cmake CXX1405构建android项目时发生异常

2skhul33  于 2022-12-18  发布在  Android
关注(0)|答案(2)|浏览(788)

得到了错误,当我建立像在下面的项目。我尝试了这么多的事情,但从来没有成功。我正在使用m1的MacBook。这是与此错误有关?
[CXX 1405]生成Json时出现异常启动进程“命令”/用户/serhat/库/Android/sdk/cmake/3.18.1/bin/cmake '“时出现问题
在build.gradle中:

externalNativeBuild {
    cmake {
        path "CMakeLists.txt"
    }
}

这是CmakeList.txt文件

# For more information about using CMake with Android Studio,read the
# documentation: https://d.android.com/studio/projects/add-native-code.html

# Sets the minimum version of CMake required to build the native library.

cmake_minimum_required(VERSION 3.4.1)

# Creates and names a library, sets it as either STATIC
# or SHARED, and provides the relative paths to its source    code.
# You can define multiple libraries, and CMake builds them for you.
# Gradle automatically packages shared libraries with your   APK.

add_library( # Sets the name of the library.
         native-lib

         # Sets the library as a shared library.
         SHARED

         # Provides a relative path to your source file(s).
         src/main/cpp/native-lib.cpp )

# Searches for a specified prebuilt library and stores the path as a
# variable. Because CMake includes system libraries in the search path by
# default, you only need to specify the name of the public NDK library
# you want to add. CMake verifies that the library exists before
# completing its build.

find_library( # Sets the name of the path variable.
          log-lib

          # Specifies the name of the NDK library that
          # you want CMake to locate.
          log )

  # Specifies libraries CMake should link to your target library. You
 # can link multiple libraries, such as libraries you define   in this
# build script, prebuilt third-party libraries, or system libraries.

target_link_libraries( # Specifies the target library.
                   native-lib

                   # Links the target library to the log    library
                   # included in the NDK.
                   ${log-lib} )
kwvwclae

kwvwclae1#

我修复了此问题:

softwareupdate --install-rosetta
7bsow1i6

7bsow1i62#

降级到ndk的早期版本

到目前为止,降级ndk正在改进原生c++项目中的构建。
降级为:

  • 丹麦克朗21.4.7075529
  • cmake 3.10.2版本
  • 维持Android 12作为构建目标(新appcompat库的要求)
  • minsdk可能低于32

降级到Android开发者网站上已测试的先前ndk发布点表中专门列出的ndk和cmake的早期版本。

相关问题