Android - 编译C库

时间:2018-02-06 14:34:35

标签: android c makefile android-ndk

我需要为Android编译libmysqlclient和librtlstr(实际上我可以找到rtlsdr,但由于我需要mysqlclient,问题仍然存在)。 我遵循了几个指南,但大多数都提出了这里写的指令http://mortoray.com/2012/08/21/android-ndk-cross-compile-setup-libpng-and-freetype/

无论如何,我下载的软件包不包含任何配置文件,因此我不知道如何继续。

因为这个文件的目的应该只是创建makefile,所以可能有办法解决这个问题。

所以我的问题是:

1)这是正确的方法吗?还有其他人更容易吗?

2)是否存在通用配置文件以便我可以下载和使用它?

3)如果没有,makefile是如何编写的?这样我就能克服配置文件的荒谬

我需要这些库来移植一个c代码(需要它们)来构建我将在手机上运行的可执行文件(所以我已经拥有来自NDK的独立工具链),如果它有帮助

1 个答案:

答案 0 :(得分:0)

1)对于使用automake的库,这是正确的方法(可能有点简化,我正在使用更多的步骤来构建)。如果库使用Cmake(必须包含CMakeLists.txt),则更容易,因为您只需要NDK。示例:cmake -DANDROID_NDK=path/to/ndk -DCMAKE_TOOLCHAIN_FILE=$NDK/build/cmake/android.toolchain.cmake -DANDROID_ABI=armeabi-v7a -DANDROID_PLATFORM=android-21 ..

2)不,您还需要提供其他文件(例如,Makefile.in

3)这些库必须使用CMake,automake等工具之一,只需Makefile或某些IDE的项目。所以,试着找出你的库使用了什么