linux终端执行二进制程序,利用ubuntu将.cpp生成二进制的可执行文件,然后利用.bat(脚本)编写命令,将可执行文件在android机上运行...

news/2024/7/5 12:18:08

首先ubuntu上有混合编译器

脚本make.sh,其内容如下:(myvir是我的虚拟机的名字)

/home/myvir/my_ndk_toolchain/bin/arm-linux-androideabi-g++ \

-g -o test test.cpp \

-I /home/myvir/my_ndk_toolchain/include/c++/4.9/arm-linux-androidideabi/armv7-a \

-I ./include \

libopencv_calib3d.a libopencv_features2d.a \

-std=c++11 -g -marm -fPIC -mfpu=neon -mfloat-abi=hard -march=armv7-a \

-llog -Wl,--no-warn-mismatch

如果对应的android版本是5.1以上,在Ubuntu上会报错,错误为:

error:only position independent executables are supported

解决方法:-fPIC后面加上 -pie -fPIE;

make.sh和test.cpp写好之后,两者在TEST文件下。在命令窗口写命令进入Test文件,然后输入./make.sh命令,就会生成一个二进制的可执行文件,将该文件从ubuntu上拷贝到电脑上(我放在了桌面上test的文件里,其路径为:c:/Users/Administrator/Desktop/test/test)。

将可执行文件在Android上运行,可在电脑上写个脚本,新建一个TEST.txt,对其重命名将其改为TEST.bat,在该文件输入:

adb shell mkdir /data/data/test (这是在android上./data/data上创建了一个test文件夹)

adb shellc:/Users/Administrator/Desktop/test/test /data/data/test (这是将桌面上的test二进制可执行文件拷贝到android的 ./data/data/test文件下)

adb shell chmod 777 ./data/data/test/test (这是对test改权限)

adb shell ./data/data/test/test (运行android上的test可执行文件)

adb shell rm -r ./data/data/test (这是删除包含test可执行文件的test文件夹)

pause

start

上面是test.bat的全部内容。弄好以后,双击test.bat执行里面的全部内容了。简单方便

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。


http://www.niftyadmin.cn/n/3170177.html

相关文章

linux执行cp占内存还是cpu,Linux进程记帐 – ‘cp’和’cpu’字段之间的区别?

让我用一个例子来帮助解释上面的结果显示:第一:我创建了一个bash脚本,我作为用户patrickr运行,这意味着要在系统上施加足够的负载才能引人注目.#!/bin/bash#this file is named loop_script.shfor i in {1..5000}doecho "Welcome $i times"don…

android 7.0查看根目录,从零开始搭建一个主流项目框架(八)—— 私有目录被限制访问(Android 7.0)...

个人博客:haichenyi.com。感谢关注我这里只说我关心的问题,并不是说Android 7.0只增加了一个“私有目录被限制访问”,当然还有其他的变化。android 7.0的新特性中,对程序员开发造成最直接的变化就是FileUriExposedException异常&a…

linux中本机无法访问数据库,linux中mysql数据库外部无法访问

今天在虚拟机CentOS系统中安装了mysql数据库,可是安装成功后外部却无法访问。找了好长时间才找到是由于防火墙设置造成的,现将解决过程写出来分享一下。首先,检查了mysql的权限,已经设置过了。且服务也已经启动,在loca…

android颜色过滤,android – 将颜色过滤器添加到Drawable使用相...

我有一个屏幕,其中多个按钮使用相同的背景Drawable.我有可重用的代码,我在各种项目中使用它来添加一个OnTouch监听器,在触摸按钮时添加灰色滤色器.这通常可以正常工作,但在这种情况下,当按下任何按钮时,所有按钮都会着色.Note: Each unique resource in your project can maint…

linux文件自动切割,linux上大文件切割成小文件传输

Atitit.病毒木马的快速扩散机制原理nio 内存映射MappedByteBufferAtitit.病毒木马的快速扩散机制原理nio 内存映射MappedByteBuffer 1. Java NIO(New Input/Output)1 1.1. 变更通知(因为每个事件都需要一个监听者 ...学习mongo系列(八)密…

android view滑动检查,Android ViewPager检测滑动超出范围

在我的Android应用程序中,我正在使用viewpager进行图像滑动.我的要求是,如果用户从第一页和最后一页滑出,则该活动应完成.我已将此值设为example.但是在我的活动中未调用方法setOnSwipeOutListener.这是我的自定义视图寻呼机类:public class CustomViewPager extend…

Python全栈开发-有趣的小程序

进度条的打印 import sys,time  for i in range(20):     sys.stdout.write($) #stdout是标准输出的意思,在一般电脑上,stdout的标准输出指的是计算机屏幕。     sys.stdout.flush()     time.sleep(0.1) 单线程下的并发运算&#xf…

android tv 新游,新游 | 《英雄之剑》TV版震撼来袭 阿里平台首发再掀全民格斗

原标题:新游 | 《英雄之剑》TV版震撼来袭 阿里平台首发再掀全民格斗互动旗下2015全民格斗游戏《英雄之剑》由手机辗转电视,终于在今日登陆,继续在大屏幕上延续永久不灭的格斗激情。这个夏天,在电视上体验华丽画面带来的极致感官享…