Gcc 如何配置GNU Autotools在Centos7上以32位编译程序?

Gcc 如何配置GNU Autotools在Centos7上以32位编译程序?,gcc,g++,centos7,32bit-64bit,autotools,Gcc,G++,Centos7,32bit 64bit,Autotools,我在VLE上做所有这些,下面是我的工作: 运行操作系统:Linux Centos 7 通用条款:4.8.5和7.1.0 我正试图使用GNU自动工具(libtool、autoconf、automake)使用gcc-7.1.0构建一个32位的项目。此外,作为一项要求,我必须在Centos 7上执行此操作,并使用gcc-7.1.0。 显然,可以通过yum正式升级的gcc的最新版本是4.8.5。但是,我成功地从官方源代码安装了gcc-7.1.0,甚至在configure期间包括了--启用多库--list

我在VLE上做所有这些,下面是我的工作:

运行操作系统:
Linux Centos 7

通用条款:
4.8.5和7.1.0

我正试图使用
GNU自动工具(libtool、autoconf、automake)
使用
gcc-7.1.0构建一个32位的项目。
此外,作为一项要求,我必须在
Centos 7
上执行此操作,并使用
gcc-7.1.0。

显然,可以通过
yum
正式升级的
gcc
的最新版本是
4.8.5
。但是,我成功地从官方源代码安装了gcc-7.1.0,甚至在
configure
期间包括了
--启用多库--list multilib=m32,m64--启用多库

我遇到的问题是,
autotools
似乎想要使用64位库,尽管我在
cxflags
CFLAGS
LDFLAGS
中包含了-m32编译器开关。我认为它在链接时使用64位库的原因是我得到以下错误:

libtool: link: g++ -m32 -fPIC -Wall -Wextra -Weffc++ -Werror -std=c++03 -O2 -o fldprog fldprog-icpprog.o  ../../                                                                                                                                                                 ../seal3/fld/src/.libs/libbsp_fld.a -lpci /usr/local/lib/../lib64/libstdc++.so -lm -Wl,-rpath -Wl,/usr/local/lib                                                                                                                                                                 /../lib64 -Wl,-rpath -Wl,/usr/local/lib/../lib64
/usr/local/lib/../lib64/libstdc++.so: error adding symbols: File in wrong format
当我将
/usr/local/lib64
重命名为
lib64\u something
时,程序将编译无误。然而,我想找到一个永久的解决办法

我在网上搜索过答案,但似乎没有一个是真的有效的。我已尝试将-
L/usr/local/lib
加入
AM\u LDFLAGS
AM\u CFLAGS
加入
configure.ac

如果您有任何意见,我将不胜感激。多谢各位


编辑:修订

我怀疑问题出在GCC 7工具链上,而不是自动工具上。通过直接运行编译器和链接器,您能否成功构建32位可执行文件?如果是这样,请查看
make
的输出(确保在详细模式下运行),以了解正在运行(失败)的构建命令
make
与您直接发出的构建命令之间的区别。