Android上运行gcc编译的exe文件

本文介绍了如何在Android设备上运行通过gcc编译的exe文件。首先尝试直接推送编译后的exe文件,但运行时出现'No such file or directory'错误。原因是动态链接导致的问题。为解决此问题,使用`gcc -static`命令进行静态链接编译,然后将静态链接的exe文件推送到Android设备,最终成功运行。
摘要由CSDN通过智能技术生成

编译c程序生成可执行文件

user@thundersoft:~/data/work/media-ctl-97077a7$ gcc  main.c  options.c  v4l2subdev.c mediactl.c -o media.exe

push到手机中运行提示没有这个文件或者目录

user@thundersoft:~/data/work/media-ctl-97077a7$ adb push media.exe  system/bin

leaf_hill:/system/bin # media.exe                                              
/system/bin/sh: /system/bin/media.exe: No such file or directory

网上找到原因是因为程序使用的是动态链接方式编译的,而Android和Ubuntu的链接库文件路径不同,导致找不到文件

可以用gcc -static命令改用静态链接的方式编译,执行成功。

user@thundersoft:~/data/work/media-ctl-97077a7$ gcc  main.c  options.c  v4l2subdev.c mediactl.c -o media.exe -static
user@thundersoft:~/data/work/media-ctl-97077a7$ adb push media.exe  data/misc/cameraserver

leaf_hill:/data/misc/cameraserver # ./media.exe                                
./media.exe [options] device
-d, --device dev    Media device name (default: /dev/media0)
-e, --entity name  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值