zoukankan      html  css  js  c++  java
  • libuv移植到android

    编译环境是linux + ndk,你要先添加好NDK路径的环境变量,然后进入libuv目录执行以下两句完成编译。

    $ source ./android-configure $NDK gyp

    $ make -C out

    有可能android-configure里写的toolchain跟你现有的不一样,改一下即可。编译后都是.o文件,有个假的很小的libuv.a请忽略(只是个外壳),要自己将编译好的目标文件打包成静态库:

    ar rv libuv.a *.o

    以上默认的是arm版本的,要生成x86的,需要使用
    $source ./android-configure-x86 $NDK gyp

    $ make -C out
    这样的话在src/unix/fs.c下约600多行处报错,估计是因为内部宏没定义好,因此随便加个条件宏跳过即可。
    #elif !defined(_AIX) &&
    (defined(_BSD_SOURCE) || defined(_SVID_SOURCE) || defined(_XOPEN_SOURCE)) && defined(FUCK_YOU)
    dst->st_atim.tv_sec = src->st_atim.tv_sec;
    dst->st_atim.tv_nsec = src->st_atim.tv_nsec;
    dst->st_mtim.tv_sec = src->st_mtim.tv_sec;
    dst->st_mtim.tv_nsec = src->st_mtim.tv_nsec;
    dst->st_ctim.tv_sec = src->st_ctim.tv_sec;
    dst->st_ctim.tv_nsec = src->st_ctim.tv_nsec;

    在其他几个测试文件中也有类似的问题,直接不用管,因为我们需要的库部分已经编译完了。

  • 相关阅读:
    数据类型
    蓝牙Controller框架梳理
    蓝牙协议框架梳理
    低功耗蓝牙漏洞分析
    C语言进阶1-#define和const
    KMP算法详细分解
    C语言---指针变量详解3
    C语言---指针变量详解2
    C语言---指针变量详解1
    C语言---指针变量作为函数参数
  • 原文地址:https://www.cnblogs.com/guoxiaoqian/p/3945034.html
Copyright © 2011-2022 走看看