移植android ndk c++各种兼容性问题
来源:互联网 发布:1936奥运会知乎 编辑:程序博客网 时间:2024/06/06 02:52
- __int64找不到符号
采用int64_t来代替:
#if defined(__ANDROID__)
typedef int64_t __int64;
#endif
- <sys/io.h>找不到
android下不需要直接引用该文件,用下面的宏去掉即可
#if !defined(__APPLE__) && !defined(__ANDROID__)
#include <sys/io.h>
#endif
#include <sys/io.h>
#endif
- SO_NOSIGPIPE找不到
SO_NOSIGPIPE在mac中存在,可惜在android中不存在。请使用MSG_NOSIGNAL来代替
#if defined(__ANDROID__)
#define SO_NOSIGPIPE MSG_NOSIGNAL
#endif
#define SO_NOSIGPIPE MSG_NOSIGNAL
#endif
- uint64_t, int64_t, uint32_t, int32_t等类似类型找不到
请检查你的头文件包含,将系统的头文件放在自已的头文件之前。因为你自己的头文件有可以定义了重复的类型,导致系统头文件出错。
- S_IREAD、S_IWRITE或者__S_IREAD、__S_IWRITE找不到
请用S_IRUSR、S_IWUSR代替
- pthread_cancel找不到
这个android并未实现,有一些替代方法,具体见:http://bbs.rosoo.net/thread-10289-1-1.html
- getifaddrs, <ifaddr.h> 找不到
android并没有实现。不过谢天谢地,有人已经帮我们实现了。感谢一下他:
https://github.com/kmackay/android-ifaddrs
- <sys/statvfs.h>找不到
请用此来代替:
#if defined(__ANDROID__)
# include <sys/vfs.h>
# define statvfs statfs
#else
# include <sys/statvfs.h>
#endif
# include <sys/vfs.h>
# define statvfs statfs
#else
# include <sys/statvfs.h>
#endif
- Android--移植android ndk c++各种兼容性问题
- 移植android ndk c++各种兼容性问题
- 移植android ndk c++各种兼容性问题
- 移植android ndk c++各种兼容性问题
- Android ndk移植c库libpng
- Android ndk移植c库libpng
- android-ndk ffmpeg移植
- NDK Android* 应用移植方法
- NDK Android* 应用移植方法
- 使用 Android NDK 的交叉编译工具链移植 C/C++ 项目到安卓平台
- 使用 Android NDK 的交叉编译工具链移植 C/C++ 项目到安卓平台
- Android NDK 调用C
- android ndk c编译
- Android Studio NDK(C++)
- Android studio NDK成长记录(四)C调Java的各种情况解析
- Android studio NDK成长记录(三)Java调用C的各种情况解析
- GORC | NDK | 移植 | makefile.in | Android.mk
- Android ffmpeg 移植 cygwin+ndk-r6b+win7
- Ehcache缓存配置
- cortex-M4的trace功能
- Boost的动态多维数组-multi_array
- AML8726调试记录
- 在创建database link时,后面多个后缀REGRESS.RDBMS.DEV.US.ORACLE.COM
- 移植android ndk c++各种兼容性问题
- IC业界名词解释
- grub使用说明
- Oracle比较时间大小
- linux grep 匹配某行不以800开头
- Python中的module,library,package之间的区别
- Oracle进程类别
- Hibernate对象的状态,session的clear()和evict()
- word插入图表目录的时候同时插入了原图的解决办法