Clion上使用NDK编译Android上C程序

Linux 平台

NDK下载安装

NDK存在AndroidStudio中SDK Location目录下NDK目录中,或者去官网下载
NDK 下载

去ndk目录下执行以下命令,查看是否有效

./ndk-build.cmd -v

GNU Make 4.3
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Clion配置

打开Clion,新建一个C project
配置ToolChains和Cmake

image

image

Cmake options如下

-DCMAKE_TOOLCHAIN_FILE=/data/work/NDK/android-ndk-r25d-canary/build/cmake/android.toolchain.cmake
-DCMAKE_ANDROID_NDK=/data/work/NDK/android-ndk-r25d-canary
-DANDROID_ABI=arm64-v8a
-DCMAKE_SYSTEM_NAME=Android
-DCMAKE_SYSTEM_VERSION=28
-DCMAKE_C_FLAGS=""
-DCMAKE_CXX_FLAGS=""
-DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang
-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a

默认文件
CMakeLists.txt

cmake_minimum_required(VERSION 3.31)
project(ffmpeg_kit_16kb C)

set(CMAKE_C_STANDARD 11)

add_executable(ffmpeg_kit_16kb main.c)

main.c

int main(void) {
    printf("Hello, World !\n");
    return 0;
}

编译执行

编译获取执行文件ffmpeg_kit_16kb
image

将文件传到手机/data/local/tmp目录,执行

adb push xx/ffmpeg-kit-16kb/cmake-build-debug-ndk/ffmpeg_kit_16kb /data/local/tmp
chmod +x ffmpeg_kit_16kb
./ffmpeg_kit_16kb

参考

在Clion开发工具上使用NDK编译可以在安卓上执行的程序
CMake交叉编译Android
android-cmake

posted @ 2025-06-01 16:59  jokerpoker  阅读(175)  评论(0)    收藏  举报