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