手机linux编译器,在linux上交叉编译helloWorld到android手机上去
在ubuntu上交叉编译helloWorld到arm64的android手机上去。
这里NDK用的是r19及以上的版本。
1. 安装NDK
这里下载了 android-ndk-r21b,解压到 /home/temp/programs/android-ndk-r21b
2. 写main.cpp文件
#include
int main()
{
printf("hello world\n");
return 0;
}
3. 写交叉编译脚本 generate.sh
由于命令比较短,也可直接在命令行里写。
新建generate.sh,并给执行权限 : chmod +x generate.sh
export NDK=/home/temp/programs/android-ndk-r21b
$NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android26-clang++ \
main.cpp -o hello
使用了NDK 默认安装的工具链,按照官网说明,NDK在r19之后,NDK 默认安装的工具链可供使用。
可以不需要使用 make_standalone_toolchain.py 脚本生成独立工具链来使用。
这样使用自带的工具链就比较方便,不用再配置sysroot等编译选项。
其中NDK为自己解压的目录。
编译器要选择自己手机的架构,这里用的是arm64,所以是aarch64-linux-android。
编译器要选择android的api版本,这里用的是anroid 8.0.0,对应api是26。
Android NDK从r13起,默认使用Clang进行编译。
交叉编译出可执行程序hello
./generate.sh
4. 放到手机上执行
4.1 安装adb工具
ubuntu下 :
sudo apt install android-tools-adb android-tools-fastboot
4.2 push到手机
adb push hello /data/local/tmp
4.3 给hello执行权限
adb shell
cd /data/local/tmp
chmod +x hello
4.4 执行hello
./hello
可以看到输出
hello world
5. 参考
手机linux编译器,在linux上交叉编译helloWorld到android手机上去相关推荐
- 手机变砖修复神器之 8 个的 Android手机系统修复工具
如果您经常在 Android 设备上遇到问题,则需要找到最好的 Android 系统修复应用程序并使用它来一劳永逸地解决您的问题.如果您不确定执行此操作的好应用是什么,我们在这里为您列出了一些最好的 ...
- linux 编译器 fpp,linux下常见的Fortran编译器介绍
(百度和网页http://www.doczj.com/doc/d81360da50e2524de5187e0b.html/forum/simple/index.php?t6437.html 的作者无关 ...
- android 代码设置 键盘适应_硬核软件,能在电脑上控制iPhone和Android手机
在电脑上控制手机大概已经不是什么新鲜操作,小米.华为都为自家手机和电脑的联动推出了同屏操作之类的功能,此外也可以通过开源软件Scrcpy来在Windows或者macOS上实现对安卓手机的控制,这些基本 ...
- python程序能不能在安卓手机上跑-把旧android手机变成跑python的服务器
把旧android手机变成跑python的服务器大致的思路是把android手机当linux主机用. 所以我们先要shell到手机,然后在手机上搭建python运行的环境,这样我们就能够把写的pyth ...
- android x86小白安装教程,小白的教程,在windows上安装完美的Android手机驱动
无论什么Android手机,若想和电脑进行连接,都必须在电脑上面安装Android手机的USB连接驱动,这个过程非常简单,以下是相关的流程. 第一步,安装adb驱动,地址http://u.115.co ...
- 华为手机上的计算机,华为手机可以被屏蔽到计算机上,其他Android手机呢?其实很简单...
实际上,有很多解决手机屏幕投射问题的方法,特别是Win10系统,这非常方便!当然,今天的手机也逐渐向计算机添加了手机屏幕功能,例如华为Mate30. 今天,我将与您分享Win10屏幕广播功能. 如果您 ...
- android向windows推送驱动,Windows上安装完美的Android手机驱动
无论什么Android手机,若想和电脑进行连接,都必须在电脑上面安装Android手机的USB连接驱动,这个过程非常简单,以下是相关的流程: 眼尖的可以看到这个驱动是Desire的,其实驱动是通用的, ...
- 孩子学计算机该不该买手机,该不该给上小学的孩子买手机?
「 本期话题 」 该不该给上小学的孩子买手机? 很多朋友留言给我们说,最近正在纠结这个问题. 买吧,担心孩子玩手机会影响学习和视力,也担心他会沉迷游戏,更担心网上乌杂的信息"污染" ...
- android 备份整个手机,快收藏!史上最全的安卓手机数据备份方法都在这里了
随时随地,想看就看.可以说,现在手机的江湖地位已经是如日中天,成为人们每天都离不开的东西.不论是工作还是生活,手机里都储存了太多代表我们回忆的数据,于我们而言,重要的不是手机,而是手机里的数据,今天, ...
最新文章
- 配置linux-Fedora系统下iptables防火墙
- BCE或能成为BCH的一个侧链
- 想学Python,怎么开始才好呢?
- 从Dart列表中删除重复项的2种方法
- Web前端必备-Nginx知识汇总
- sqlconfigdatasource mysql_MFC odbc 连接MySQL 的 (SQLConfigDataSource动态DSN)
- 讨论.NET Core 配置对GC 工作模式与内存的影响
- 在CentOs7上yum安装redis
- 【硬核干货】如何高效找到优质编程项目?
- Xcode打包踩过的那些坑
- android的简单知识,Android基础知识(简单实例计算器)
- Python 网络数据采集
- python︱六款中文分词模块尝试:jieba、THULAC、SnowNLP、pynlpir、CoreNLP、pyLTP
- 2020年程序员年薪、婚恋、跳槽等报告出炉,说的是你吗?
- thon应用领域介绍
- 特征筛选【IV和WOE】
- matlab 点顺时针排序,怎样对平面中的点进行顺时针或者逆时针排序
- wegame与客户端服务器连接中断95,wegame连接服务器失败
- 六十六条经典禅语提升人生境界
- 本地计算机架设http服务器,多维互联网(在本地电脑上架设web服务器软件)
热门文章
- pycharm连接远程mysql_CentOS7安装mysql以及使用pycharm远程连接mysql时遇到的问题
- asp建站系统源码_【服务器安全】windows系统安全注意事项
- 给单片机焼写程序需要什么东西_单片机怎么烧写程序
- js 时间比较_成都js聚合物弹性防水涂料生产厂家来电洽谈_鹏晨防水
- RHEL5 RHEL6升级GCC
- 做折线图坐标轴数字_你做的柱状图太丑了,这些美化技巧教给你(收藏)
- Towards a topological-geometrical theory of group equivariant non-expansive operators for data analy
- java 界面线性布局_怎么用java代码写一个线性布局;布局里面有两个按钮是水平的...
- java 鼠标单击_不通过鼠标点击,单纯的通过Java代码生成鼠标单击事件
- 卡尔曼滤波与组合导航原理_卫星知识科普:一种基于卫星共视的卡尔曼滤波算法!...