我想在x86_64上使用clang构建一个程序,并将程序设置为x86。到目前为止,我刚刚使用了这个命令:
$ clang++ -m32 main.cpp
但是,我在标题和库方面遇到了一些错误。
与gcc相同的情况,将由gcc-mutilib修复,但是clang没有一些multilib包。
如果我安装了gcc-multilib,那么我可以使用clang -m32,虽然,我只想安装clang,不包括gcc包。
答案 0 :(得分:0)
也许您需要的只是libc6-dev:i386。
答案 1 :(得分:0)
xy deng 的回答是正确的。如果你在 x86 主机上编译 x86 程序,你只需要运行
sudo apt-get install libc6-dev
但是如果您在 x86_64 主机上并且想要将程序交叉编译到 x86,请不要尝试安装 libc6-dev:i386
。需要专门标记为交叉编译的Apt包:
sudo apt-get install libc6-dev-i386-cross
This AskUbuntu answer 有更多关于 Ubuntu 和 Apt 如何组织这些头文件以进行交叉编译的信息。