以下在 Ubuntu下 编译一个 c 语言 hello world 并在 android 手机或模拟器上执行

进入程序位置

cd  ~/pnp5/jni

有三个文件 main.c Android.mk, Application.mk, 内容:

$ cat main.c 

#include <stdio.h>

int main (void)
{ printf("hello world");
return 0;
} ~/pnp5/jni$ cat Android.mk LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS) LOCAL_SRC_FILES:= \
main.c LOCAL_MODULE:= pnp5
LOCAL_MODULE_TAGS := optional include $(BUILD_EXECUTABLE) ~/pnp5/jni$ cat Application.mk
APP_ABI := all

注:Application.mk 能够没有(怎样你仅仅须要arm程序)

在当前文件夹执行 ndk-build

( 假设没有ndk,去下载一个)

~/pnp5/jni$ ~/android-ndk-r10d/ndk-build
[arm64-v8a] Compile : pnp5 <= main.c
[arm64-v8a] Executable : pnp5
[arm64-v8a] Install : pnp5 => libs/arm64-v8a/pnp5
[x86_64] Compile : pnp5 <= main.c
[x86_64] Executable : pnp5
[x86_64] Install : pnp5 => libs/x86_64/pnp5
[mips64] Compile : pnp5 <= main.c
[mips64] Executable : pnp5
[mips64] Install : pnp5 => libs/mips64/pnp5
[armeabi-v7a] Compile thumb : pnp5 <= main.c
[armeabi-v7a] Executable : pnp5
[armeabi-v7a] Install : pnp5 => libs/armeabi-v7a/pnp5
[armeabi] Compile thumb : pnp5 <= main.c
[armeabi] Executable : pnp5
[armeabi] Install : pnp5 => libs/armeabi/pnp5
[x86] Compile : pnp5 <= main.c
[x86] Executable : pnp5
[x86] Install : pnp5 => libs/x86/pnp5
[mips] Compile : pnp5 <= main.c
[mips] Executable : pnp5
[mips] Install : pnp5 => libs/mips/pnp5

发如今 与jni 同一级别的 libs 文件夹生成各种 target 的 程序。

在模拟器(真机)上执行

用 adb devices, 检查android是否启动

用 adb push pnp5 data/

用 adb shell 进入设备,而后执行 cd data; chmod 777 pnp5; ./pnp5

hello world 就打印出来了

最简单 NDK 样例的更多相关文章

  1. Android中关于JNI 的学习(零)简单的样例,简单地入门

    Android中JNI的作用,就是让Java可以去调用由C/C++实现的代码,为了实现这个功能.须要用到Anrdoid提供的NDK工具包,在这里不讲怎样配置了,好麻烦,配置了好久. . . 本质上,J ...

  2. Introspector(内省)简单演示样例 与 简单应用

    简单演示样例: package com.asdfLeftHand.test; import java.beans.BeanDescriptor; import java.beans.BeanInfo; ...

  3. JBoss 系列九十六:JBoss MSC - 简介及一个简单演示样例

    什么是 JBoss MSC JBoss MSC 即 JBoss Modular Service Container,是第三代 JBoss 产品 JBoss 7和WildFfly的内核,JBoss MS ...

  4. Thrift的安装和简单演示样例

    本文仅仅是简单的解说Thrift开源框架的安装和简单使用演示样例.对于具体的解说,后面在进行阐述. Thrift简述                                           ...

  5. [hadoop系列]Pig的安装和简单演示样例

    inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ).(来源:http://blog.csdn.net/inkfish) Pig是Yaho ...

  6. 一则简单演示样例看Oracle的“无私”健壮性

    Oracle的强大之处就在于他能总帮助让你选择正确的运行计划,即使你给了它错误的指示. 实验: 1. 创建測试表: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...

  7. scrapy爬虫学习系列二:scrapy简单爬虫样例学习

    系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...

  8. Android通过startService播放背景音乐简单演示样例

    关于startService的基本使用概述及其生命周期可參见博客<Android中startService的使用及Service生命周期>. 本文通过播放背景音乐的简单演示样例,演示sta ...

  9. 使用CEF(二)— 基于VS2019编写一个简单CEF样例

    使用CEF(二)- 基于VS2019编写一个简单CEF样例 在这一节中,本人将会在Windows下使用VS2019创建一个空白的C++Windows Desktop Application项目,逐步进 ...

随机推荐

  1. .NET Core MVC Web最最最基础的框架搭建

    1. 使用VS创建.NET Core MVC Web项目 创建完成就是酱紫的了 2. 用NuGet把这些全部都安装了 Install-Package Microsoft.EntityFramework ...

  2. laravel jwt 做API 退出登录(注销) 该怎么弄? 如何让token失效

    laravel jwt 做API 退出登录(注销) 该怎么弄? 如何让token失效 php框架 laravel 2.1k 次浏览 问题对人有帮助,内容完整,我也想知道答案0问题没有实际价值,缺少关键 ...

  3. Android APK生成证书并签名方法

    Android APK生成证书并签名方法 android cordova keystore android证书签名 阅读:925 时间:2018年09月20日 Android开发者可能对此很熟悉.使用 ...

  4. h5 移动端 监听软键盘弹起、收起

    前面一篇博客 h5 安卓 键盘弹起界面适配 修改webview高度提到了在adnroid中如何监听软键盘的弹起与收起,是利用的窗口的高度发生变化window.onresize事件来做突破点的,但是io ...

  5. lua 函数练习

    --逻辑表达式 --1+2+3+...+n function fun1(n) ,n do sum = sum + i end return sum end -- 计算奇数和 function fun2 ...

  6. vue 添加 fastclick的支持

    fastclick:处理移动端click事件300毫秒延迟 1.兼容性iOS 3及更高版本的移动SafariiOS 5及更高版本的ChromeAndroid上的Chrome(ICS)Opera Mob ...

  7. 启动web项目卡在Initializing Spring root WebApplicationContext不动

    这几天在和同学一起做一个电教器材管理系统的Web项目,用SVN互通,在此记录下经常遇到的bug. Bug: 启动项目一直卡在Initializing Spring root WebApplicatio ...

  8. Python:webshell 跳板机审计服务器

    1.修改paramiko源码包实现 https://github.com/paramiko/paramiko/tree/1.10.1 下载源码包 unzip paramiko-1.10.1.zip p ...

  9. GROUP函数

    GROUP_ID 首先我们看看官方的解释: 大意是GROUP_ID用于区分相同分组标准的分组统计结果. 解释起来比较抽象,下面我们来看看具体的案例. 例1:单一分组 SQL> select gr ...

  10. 集训第四周(高效算法设计)I题 (贪心)

    Description Shaass has n books. He wants to make a bookshelf for all his books. He wants the bookshe ...