Jacques-Olivier Haenni wrote:
>
> Hi,
>
> I'm desesperatly trying to build SGI Pro64 compiler from the sources on my
> IA-32 Linux box. I've been able to solve many problems, but I now ask for
> help
> for the following one:
>
> When compiling the ipa, I get the following error :
>
> g++ -D_SGI_SOURCE -D_LANGUAGE_C_PLUS_PLUS -funsigned-char
> -D__GNU_BUG_WORKAROUND -D_NOTHREADS -c -D__MIPS_AND_IA64_ELF_H
> -DTARG_IA64 -D_NEW_SYMTAB -D_MERGE_SUMMARY_ST_IDX_=1 -DBACK_END
> -DSTD_MONGOOSE_LOC='"/usr/lib32/cmplrs"' -D_SUPPORT_IPA -D_MULTIGOT
> -D_NEW_SYMTAB -D_MERGE_SUMMARY_ST_IDX_=1 -DBACK_END
> -DSTD_MONGOOSE_LOC='"/usr/lib32/cmplrs"' -D_SUPPORT_IPA -DMONGOOSE_BE
> -I../../ipa/common -I../../ipa/local -I../../ipa/main/optimize
> -I../../ipa/main/analyze -I../../be/lno -I../../be/com -I../../common/com
> -I../../be/region -I../../be/opt -I../../common/com/ia64 -I../../common/util
> -I../../fake_ld/common -I../../fake_ld -I../be -I../include/libelf
> -I../include -O0 -D_MIPSEL -D_LONGLONG -D_MIPS_SZINT=32 -D_MIPS_SZPTR=32
> -D_MIPS_SZLONG=32 -MD ../../ipa/common/ipc_dst_merge.cxx -o ipc_dst_merge.o
> In file included from ../../be/com/fb_whirl.h:67,
> from ../../ipa/local/ipl_summary.h:76,
> from ../../ipa/main/analyze/ipa_cg.h:65,
> from ../../ipa/common/ipc_dst_merge.cxx:51:
> ../../common/com/fb_info.h:142:2: warning: multi-line comment
> ../../common/com/fb_info.h:145:2: warning: multi-line comment
> /tmp/ccBVmgBK.s: Assembler messages:
> /tmp/ccBVmgBK.s:165: Error: invalid character '=' in operand 1
> /tmp/ccBVmgBK.s:446: Error: invalid character '=' in operand 1
> /tmp/ccBVmgBK.s:518: Error: invalid character '=' in operand 1
> [about 20 similar errors have been cut off]
>
> I've tried to debug this and I've noticed that the generated assembly file
> contains calls such as 'call operator!=' which cause this problem.
>
> My question is now : How can I get rid off this error ? Do I have to upgrade
> or install another version (which one ?) of binutils or gcc ? Could you tell
> me which versions of gnu tools are able to correctly compile Pro64 ? Is
> somebody else experiencing the same problem ?
>
> My current configuration is RedHat 7.0 with
> - gcc version 2.96 20000731 (Red Hat Linux 7.0)
> - GNU assembler version 2.10.91 (i386-redhat-linux)
> using BFD version 2.10.1.0.2
>
> Does somebody has any clue for me to be able to compile Pro64 ?
>
> Thanks a lot for your help.
>
> Jacques-Olivier
>
It is a bug in g++.
You might want to preprocess the file and send it to Cygnus.
I am not sure why you are trying to build ipa.
All components necessary for using ipa have not yet
been released.
In case you still want to build ipa, you could do the
following.
Modify the g++ commandline emitted by make to generate the
assembly language file ipc_dst_merge.s
Edit the assembly file replacing
operator!= by __ne
operator< by __lt
and then generate the object file as follows
as -x -o ipc_dst_merge.o ipc_dst_merge.s
Murthy
|