Android CMake“严重错误:找不到'bits / libc-header-start.h'文件”

时间:2019-06-26 01:09:39

标签: android c++ cmake

我在android studio中遇到了这个问题。我将制作用于Android项目的本机C代码。我用cmake为了卷曲一些URL,我在CMakeLists.txt中包含了一些库。以下是我的CMakeLists.txt文件内容。

cmake_minimum_required(VERSION 3.4.1)

set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE BOTH)

set(CURL_INCLUDE_DIR "/usr/include")
set(CURL_LIBRARY "-lcurl")

find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIRS})

add_library(native-lib SHARED native-lib.cpp )

find_library(log-lib log )

target_link_libraries(native-lib ${CURL_LIBRARIES} ${log-lib})

然后我遇到了以下致命错误。

  

/usr/include/stdint.h:26:10:致命错误:找不到“ bits / libc-header-start.h”文件
   #include <bits/libc-header-start.h>
  ^ ~~~~~~~~~~~~~~~~~~~~~~~

有人可以帮助我吗?请...

1 个答案:

答案 0 :(得分:0)

可能无法正确编译适用于所有类型设备的curl库。我发现了三种类型的库:armeabiarmeabi-v7ax86。但是64位体系结构的cpu可以在操作系统的自适应功能下自动执行32位程序。这三个库可在常见的cocos2d-x game-source-project中找到。因此,本文的读者应该使用ndk-build而不是cmake来达到此目的,即suit-target-device。