为Android构建Rsync

Mac*_*ato 7 rsync android build

我从http://rsync.samba.org/下载了rsync. 谁知道如何编译要在Android设备中部署的源代码?

Ben*_*nor 13

假设您静态链接,您可以在没有NDK的情况下进行编译.这适用于Ubuntu 13.04 Raring Ringtail.

安装交叉编译器:

sudo apt-get install gcc-arm-linux-gnueabi
Run Code Online (Sandbox Code Playgroud)

下载rsync:

wget http://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz
tar -zxv -f rsync-3.0.9.tar.gz
cd rsync-3.0.9
Run Code Online (Sandbox Code Playgroud)

使用静态链接编译交叉编译器:

./configure --host=arm-linux-gnueabi CFLAGS="-static"
make
Run Code Online (Sandbox Code Playgroud)

你会得到一些警告Using X in statically linked applications requires at runtime the shared libraries from the glibc version used for linking.但到目前为止,rsync对我有用.

最后,安装到手机上(假设您使用的是SSHDroid):

scp -P 2222 rsync root@$PHONE_IP:/data/data/berserker.android.apps.sshdroid/dropbear
Run Code Online (Sandbox Code Playgroud)


Ker*_*rry 0

您需要在此处找到 Android NDK 。网页上包含有关如何为 Android 编译 C 代码的示例和下载。

来自NDK 网站:

NDK 提供:

一组用于从 C 和 C++ 源生成本机代码库的工具和构建文件 一种将相应本机库嵌入到可部署在 Android 设备上的应用程序包文件 (.apk) 中的方法 一组本机系统标头和库从 Android 1.5 开始,所有未来版本的 Android 平台都将支持该功能。使用本机活动的应用程序必须在 Android 2.3 或更高版本上运行。文档、示例和教程

如果它接近您想要实现的目标,我也确实找到了这一点。