This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 3.4.3 Bootstrap error - XCOFF64 object files are not allowed in 32-bit mode. AIX 5.2.0.0


> It looks to me that when "creating a temporary reloadable object file:
> .libs/libg2c.la-2.o" for the ppc64 directory it should have issued the ld
> command with the -b64 option. 
> 
> Why is configure getting this wrong?
> 
> Testing with ld -b64 works.

	This is due to a flaw in GNU libtool.  If one bootstraps GCC in a
directory with too deep a path, libtool will configure itself with an
unnecessarily short maximum command length.  libtool then confounds the
problem by generating an intermediate file with the wrong commandline
options, in this case missing -b64, causing the failure.

	I get around this problem with a quick and dirty hack that
overrides the command length value immediately after it incorrectly has
been calculated.  In gcc-3.4/ltconfig:


     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len - $len`
   fi
+  lt_cv_sys_max_cmd_len=20000
   echo "$progname:@lineno@: result: $lt_cv_sys_max_cmd_len" 1>&5
   echo "${ac_t}$lt_cv_sys_max_cmd_len" 1>&6


If you share the sources with non-AIX systems, note that this change will
affect all systems.

David


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]