其他分享
首页 > 其他分享> > c – 无法在64位Debian上运行32位二进制文​​件

c – 无法在64位Debian上运行32位二进制文​​件

作者:互联网

我在Debian Linux(64位)上编译C并且需要能够为另一个系统编译为32位.二进制文件不能在我的64位系统上运行,让它们在那里运行会更方便测试.

我测试它的C是int main(){std :: cout<< “这是Main.cpp”<<的std :: ENDL;包括iostream在内,所以没什么好看的. 我的编译行是g -m32 Main.cpp 当我这样做./a.out我得到-bash:./ a.out:无法执行二进制文件:exec格式错误 我已经做了很多搜索试图解决这个并安装了apt:libc6:i386,libncurses5:i386和libstdc 6:i386. 任何其他想法来解决这个问题将非常感激.

解决方法:

您需要安装32位库,例如

dpkg --add-architecture i386
apt-get update
apt-get install libc6-i386

您可以使用ldd命令找出所需的库.
您可以使用apt-file查找库的包.

标签:32bit-64bit,32-bit,c,linux,64-bit
来源: https://codeday.me/bug/20190828/1747798.html