在Windows环境中编译Android下运行的c程序

一、安装 NDK
  1. 下载并解压 android-ndk-r21e-windows-x86_64.zip.
  2. 将 NDK 所在路径配置到环境变量中,假设解压到 D:\下。
SetX NDK D:\android-ndk-r21e-windows-x86_64\
二、安装 CMake
  1. 下载并安装 cmake-3.26.3-windows-x86_64.msi
三、安装 ninja
  1. 下载并解压 ninja-win.zip.
  2. 将 ninja 所在路径配置到环境变量PATH中,假设解压到 D:\下。
    SetX PATH “%PATH%;D:\ninja-win”
四、编写 main.c
  1. 在工程根目录下(假设为D:\build-hello)创建 src 文件夹。
  2. 在 src 文件夹下创建文件 main.c 文件。
#include <stdio.h>

int main(int argc, char *argv[])
{
	printf("Hello World!\n");
	return 0;
}
五、编写 CMakeLists.txt
  1. 在 src 文件夹下创建 CMakeLists.txt 文件。
cmake_minimum_required(VERSION 3.0)

project(hello_ndk)

add_executable(helloworld.exe
    main.c
)
六、编写 build.bat
  1. 为了方便编译,将编译命令写到 bat 文件中。
@echo off

cmake ^
-GNinja ^
-DCMAKE_TOOLCHAIN_FILE=C:\android-ndk-r21e-windows-x86_64\android-ndk-r21e\build\cmake\android.toolchain.cmake ^
-DANDROID_PLATFORM=29 ^
-DANDROID_ABI=arm64-v8a ^
-S src ^
-B build
ninja -C build
copy build\helloworld.exe .
  1. build.bat 成功运行后,在工程根目录下会需要生成需要的可执行文件 helloworld.exe 。
七、测试
D:\build-hello>adb push helloworld.exe /data/local/tmp/
helloworld.exe: 1 file pushed, 0 skipped. 4.4 MB/s (9664 bytes in 0.002s)

D:\build-hello>adb shell chmod +x /data/local/tmp/helloworld.exe

D:\build-hello>adb shell /data/local/tmp/helloworld.exe
Hello World!

D:\build-hello>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值