windows下使用vscode + NDK搭建 Android c++编译环境

需要的环境:

    1. NDK
    1. cmake(若用android studio用过cmake则在sdk下有)

main.cpp

测试printf打印和log打印

cpp 复制代码
#include <jni.h>	// 需要智能提示则在 .vscode/c_cpp_properties.json 将 ndk 下的 toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include 添加到 includePath 
#include <stdio.h>

#define  LOGI(...)  __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
#define LOG_TAG test

int main()
{
    LOGI("hello");
    printf("hello2\r\n");
}

CMakeLists.txt

复制代码
cmake_minimum_required(VERSION 3.0)

SET(PROJECT_NAME ndk_test)
project(${PROJECT_NAME})

add_executable(${PROJECT_NAME} main.cpp )
target_link_libraries(${PROJECT_NAME} log)

windows下编译

我的环境下,NDK路径是:D:/Android/sdk/ndk/23.1.7779620;Android SDK路径是:D:\Android\Sdk,SDK目录下有 cmake\3.22.1\bin,将其添加到PATH环境变量中。

build.cmd

sh 复制代码
set build_path=build
set NDK_PATH="D:/Android/sdk/ndk/23.1.7779620"

mkdir %build_path%
cd %build_path%
::rem cmake编译

cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE="%NDK_PATH%/build/cmake/android.toolchain.cmake" -DANDROID_NDK=%NDK_PATH% -DANDROID_ABI="arm64-v8a" -DCMAKE_MAKE_PROGRAM="%NDK_PATH%/prebuilt/windows-x86_64/bin/make.exe" ..

::rem make编译
%NDK_PATH%"/prebuilt/windows-x86_64/bin/make.exe"
相关推荐
萝卜er1 小时前
BroadcastReceiver 静态注册与动态注册-《Android深水区(七)》
android
萝卜er1 小时前
ContentProvider 与跨进程数据访问-《Android深水区(八)》
android
萝卜er1 小时前
Service、前台服务与后台限制-《Android深水区(六)》
android
萝卜er1 小时前
Android 存储体系与分区存储-《Android深水区(十二)》
android
会编程的吕洞宾1 小时前
DeepAgents In Action学习(Second)
android·java·学习
太子釢2 小时前
用 AI 完整实现 Github 客户端:基于 KMP + SwiftUI + Compose
android·人工智能·ios
汪海游龙2 小时前
本地源码还是 Maven 版本?Gradle composite build 双轨依赖的正确接法
android·ci/cd·kotlin
k3x1n2 小时前
三星安卓系统BUG排查记录:云闪付、铁路12306、个人所得税、中国移动等App,长期闪退的根本原因分析
android·逆向
网安蟹佬霸4 小时前
CTF Web方向解题全攻略:从信息收集到getshell(附实战payload与脚本)
android·前端·网络·安全·web安全·网络安全·网安
又见情义4 小时前
Android 13 Settings 设置界面选项裁剪(RK3568平台)
android