请问运行于不同CPU构架的linux,它们的软件可以通用吗?

在不重新编译源代码的情况下。 比如x86的linux的软件可以运行于arm构架的linux吗,
是不是和在编译是否时为X86的CPU构架优化了编译有关?那么多数的软件在编译时是否为X86的CPU构架而优化了呢?还是和不同的安装包格式有关?那么.tar.gz格式的软件包呢? 在arm的linux安装时编译是否就可以成功安装。
还有就是是不是所有的源代码只要在arm的CPU下编译就一定可以

就你举例来说的x86编译的软件,arm是不能用的,需要交叉编译,因为他们的执行指令都不一样,你需要用arm的编译器来编译你的源码才可以。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-17
不能的,就好象winxp64位的程序就不能够在32位的机器上运行。cpu架构不同,代表着整个软件体系机构的不同,它编译出来的二进制代码也是不同的。
所有它们的软件不能够通用。但是有些还是可以的。还是拿windows来说。64位的可以运行32位的程序,因为有些系统它还有一种向下兼容的功能。
第2个回答  2011-03-17
我觉得这个恐怕不行。有些linux是经过特殊设计的,有专门用途。比如用在超级计算机上的和用在ps3游戏机上的。
第3个回答  2011-03-17
不能通用
主流的X86构架和ARM之间是不行
其他构架实在不了解
不敢妄言
第4个回答  2011-03-17
不行的,但只要你有手段,一切皆有可能
相似回答