Doubango与编译学习相关资料—-来自好友王阳(他的博客http://blog.163.com/dream_burgeon/blog/static/235007155201469104240)

  • Post author:
  • Post category:其他



Doubango修改编译纪要






doubango使用C语言编写,其他语言使用其代码需要响应的接口,如在Android平台上调用,则需要JNI(Java Native Interface)接口调用,可以使用相应的代码生成工具生成这些JNI的代码。以下介绍几个自动生成工具。




SWIG:



RTL:



FSME/FSMC:





另外介绍一个标准:




POSIX :


可移植操作系统接口(Portable Operating System Interface ,缩写为


POSIX





POSIX标准定义了操作系统应该为应用程序提供的接口标准。







tar -zxvf doubango.zip



cd doubango







在Linux下编译Doubango使其能够在ARM上运行,则需要用到交叉编译器NDK。


不同OS有不同版本的NDK,可根据需要进行选择,见

http://developer.android.com/。


以下是NDK的结构。

/toolchains下是不同平台使用的不同编译工具,支持linux下编译生成x86、mipsel、arm指令集。

/platform下是支持不同Android平台版本的工具。

/platform/android-X/arch-xxx/usr/下包含了需要的库和头文件。

Doubango修改编译纪要 - 第一首歌 - 萌芽





编译成功需要以下几个规则:


1.使用Android库代替GCC原有库。

2.和系统库相连。

3.遵循特殊规则,使用NDK工具。



编译需要makefile控制文件(控制编译过程),它通常是通过configure进行生成的。




版权声明:本文为zhangdong305原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。