arm版的debian可以运行i386的程序吗?
最近想在开发版上跑些程序,但是arm平台跑不起来x86的程序,有什么解决方法吗? 编译个arm版啊 box86、fex、qemu-user-x86 qemu起个虚拟机? KarsusNeko 发表于 2023-8-30 20:16编译个arm版啊
编译搞不定啊,这个都不会,编译就更不会了
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 https://askubuntu.com/questions/1376366/is-there-any-translation-layer-for-x86-software-on-ubuntu-arm 省流:qemu或者box64
不过有源码的话还是编译简单吧。 posthoc 发表于 2023-8-30 20:27
https://askubuntu.com/questions/1376366/is-there-any-translation-layer-for-x86-software-on-ubuntu-ar ...
我追求的能跑起来单独的一个x86linux程序就行,不需要gui
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 Zepp 发表于 2023-8-30 20:19
box86、fex、qemu-user-x86
这些都是虚拟机吧,有没有那种可以直接在在原系统运行的库之类的?
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 换个x86开发板
—— 来自 HONOR HPB-AN00, Android 12上的 S1Next-鹅版 v2.5.4 ryuonegz 发表于 2023-8-30 20:37
这些都是虚拟机吧,有没有那种可以直接在在原系统运行的库之类的?
—— 来自 motorola XT2175-2, Andro ...
x86程序编出来是x86的机器码,你板子只认识arm的机器码,虚拟机是把x86的机器码转成arm的机器码,不转就是跑不起来啊 新的瑞拉 发表于 2023-8-30 20:43
x86程序编出来是x86的机器码,你板子只认识arm的机器码,虚拟机是把x86的机器码转成arm的机器码,不转就 ...
那我起个虚拟机吧
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 会写程序还不会编译吗
—— 来自 Xiaomi M2007J3SC, Android 11上的 S1Next-鹅版 v2.5.4 新的瑞拉 发表于 2023-8-30 20:43
x86程序编出来是x86的机器码,你板子只认识arm的机器码,虚拟机是把x86的机器码转成arm的机器码,不转就 ...
但是看到qemu-usr可以做到不开虚拟机运行其它平台的程序啊
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 本帖最后由 KarsusNeko 于 2023-8-30 21:28 编辑
新的瑞拉 发表于 2023-8-30 20:43
x86程序编出来是x86的机器码,你板子只认识arm的机器码,虚拟机是把x86的机器码转成arm的机器码,不转就 ...
交叉编译可以用x86编arm。嵌入式设备没那么大空间,没那么强性能,大都用的交叉编译器。 ryuonegz 发表于 2023-8-30 20:22
编译搞不定啊,这个都不会,编译就更不会了
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版...
在arm上运行x86除了虚拟机也没办法呀,机器码啊寄存器啊啥的完全不一样
— from OnePlus ONEPLUS A6003, Android 13 of S1 Next Goose v2.5.2-play 理论上是可行的,因为微软和苹果都有这样的东西,但实际上没听说过 linux 有类似的,大概是因为开源的世界,重新编译一份的成本比另外两家小太多了,没人有动力和资源做这个,而且重新编译的正确性和性能肯定比转译强太多,搞转译简直舍近求远。
—— 来自 Xiaomi M2012K11AG, Android 13上的 S1Next-鹅版 v2.5.4 不太清楚,m1 mac上那个虚拟机只能跑arm windows,好像还没办法跑x86的程序,是这样吗
—— 来自 OPPO PGEM10, Android 13上的 S1Next-鹅版 v2.5.3 ryuonegz 发表于 2023-8-30 20:54
但是看到qemu-usr可以做到不开虚拟机运行其它平台的程序啊
—— 来自 motorola XT2175-2, Android 12上 ...
我用下来静态链接的elf用qemu user跑没啥问题。你可以下一个qemu,把qemu-x86_64然后拷到elf路径下,然后./qemu-x86_64加elf名字和参数。
不过大部分程序都是动态链接的,会出各种问题。
你可以先用file或者readelf命令看一下你要跑的程序是动态链接的还是静态链接的(网上随便找了个参考https://blog.csdn.net/Longyu_wlz/article/details/103453800)。
—— 来自 Xiaomi 22041211AC, Android 13上的 S1Next-鹅版 v2.5.4 ryuonegz 发表于 2023-8-30 20:54
但是看到qemu-usr可以做到不开虚拟机运行其它平台的程序啊
—— 来自 motorola XT2175-2, Android 12上 ...
qemu-usr不就是虚拟机吗?只不过没有模拟一些linux系统调用而已 KarsusNeko 发表于 2023-8-30 21:26
交叉编译可以用x86编arm。嵌入式设备没那么大空间,没那么强性能,大都用的交叉编译器。 ...
这个我知道,源码本身跟平台没联系(除非用了一些平台特性),那说x86的程序不就默认是x86的elf吗 天气姐姐 发表于 2023-8-30 22:08
不太清楚,m1 mac上那个虚拟机只能跑arm windows,好像还没办法跑x86的程序,是这样吗
—— 来自 OPPO PGE ...
mac上pd虚拟机里那个arm windows,可以跑x86程序,有小部分可能不兼容。 真求你编译,起 qemu 不比交叉编译省事了,速度还死慢 JetBrains 发表于 2023-8-31 09:55
真求你编译,起 qemu 不比交叉编译省事了,速度还死慢
不是我开发的……很可能连源码都没有
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 ryuonegz 发表于 2023-8-31 10:20
不是我开发的……很可能连源码都没有
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 ...
果然,我寻思就算是arm源里该有的都有了
看看dpkg foreign arch装好对应依赖,然后看看binfmt和qemu user static。是可以正常运行的 另外你用的arm开发板型号发一下,如果是我司的可以邮件指导 不要叫水狗做主人 发表于 2023-8-31 12:57
另外你用的arm开发板型号发一下,如果是我司的可以邮件指导
不是什么正经板子,闲鱼上整的矿渣垃圾
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 ryuonegz 发表于 2023-9-1 15:52
不是什么正经板子,闲鱼上整的矿渣垃圾
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1 ...
安装依赖:https://wiki.debian.org/Multiarch/HOWTO
Qemu模拟:https://wiki.debian.org/QemuUserEmulation 不要叫水狗做主人 发表于 2023-9-2 00:18
安装依赖:https://wiki.debian.org/Multiarch/HOWTO
Qemu模拟:https://wiki.debian.org/QemuUserEmulat ...
谢谢
—— 来自 motorola XT2175-2, Android 12上的 S1Next-鹅版 v2.1.2 不要叫水狗做主人 发表于 2023-8-31 12:57
另外你用的arm开发板型号发一下,如果是我司的可以邮件指导
在s1还能遇到做开发板的友商啊? 不要叫水狗做主人 发表于 2023-8-31 12:57
另外你用的arm开发板型号发一下,如果是我司的可以邮件指导
你们公司是做什么开发版的?nanopi是你们家的吗
页:
[1]