1. 安装需要的库
X86_64 的 Redhat / Centos / Scientific 下面,若要编译、运行32位程序,需要安装以下包:
yum install libgcc.i686
yum install glibc-static.i686
yum install glibc-devel.i686
2. 编译器需要添加选项
gcc -m32 -c qljt.c
qljt.c 就会以32bit 的模式编译了,。
3. 链接的时候有时候会提示没有 -lstdc++
原因: 其实就是 stdc++ 的版本不对;
解决办法:
1、执行命令: yum whatprovides libstdc++.so.6
然后会提示哪个安装包有这个库文件如下:
[root@localhost ~]# yum whatprovides libstdc++.so.6
Loaded plugins: aliases, changelog, downloadonly, fastestmirror, kabi, presto, refresh-packagekit, security, tmprepo, verify,
: versionlock
Loading support for CentOS kernel ABI
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* centosplus: centos.ustc.edu.cn
* contrib: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
libstdc++-4.4.7-3.el6.i686 : GNU Standard C++ Library
Repo : base
Matched from:
Other : libstdc++.so.6[root@localhost app]# yum whatprovides libstdc++.so.6
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.opencas.cn
* extras: mirrors.pubyun.com
* updates: mirrors.skyshe.cn
libstdc++-4.8.5-4.el7.i686 : GNU Standard C++ Library
Repo : base
Matched from:
Provides : libstdc++.so.6
2、然后执行:
[root@localhost app]# yum install libstdc++-4.8.5-4.el7.i686
---------------------
ubuntu环境参考