最近, 在树莓派(arm + linux)上编译出了一个可执行文件, 运行OK,  然后把这个二进制文件放到intel + linux的机器上运行, 发现格式错误。

        我第一反应是查看文件的32/64位兼容性, 发现, 不是这个原因。

        然后, 才缓过神来, arm指令集和intel指令集不一致, 肯定不能做到二进制兼容啊。 怎么解决呢?  交叉编译, 要么在arm上编译出适合intel运行的二进制程序, 要么在intel行编译出适合在arm想运行的二进制程序, 后者其实就是嵌入式开发的基本思路。 而这两种方法, 都需要涉及交叉编译链。

       交叉编译很重要。

       不多说。





GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐