admin管理员组

文章数量:1516870

0 前言

使用Ubuntu16.04(64bit)进行嵌入式开发时,默认情况下无法正常运行32位的交叉编译工具链,因此需要安装额外兼容包。

1 运行32位程序

若只是需要在Ubuntu16.04(64bit)中运行32bit程序, 只需要安装 libc6:i386 即可[3]:

sudo apt-get install -y libc6:i386

某些程序还需要用到 lib32stc++6 [4]:

sudo apt-get install -y lib32stdc++6

此外,还需要用到的库有 lib32z1 [5]

sudo apt-get install -y lib32z1

2 开发32位程序

在x64平台上开发32bit程序,还需安装如下库[6]:

sudo apt-get install -y gcc-multilib g++-multilib

然后编译程序时加上“-m32”参数即可[6]:

gcc test.c -m32

通过file命令查看编译出来的可执行文件,可确认它确实为32位的:

参考资料

[1]

[2]

[3]

[4]

[5]

[6]

本文标签: 程序还需要用编程