x86 -> alpha cross compiler

Jim Dinan flatline@student.umass.edu
Thu Aug 8 16:17:00 GMT 2002


Hi everyone,

I am trying to build an i686-linux -> alpha-dec-osf4.0 cross compiler
and I'm having a some trouble getting gas to compile.  Here's what I'm
doing on my Pentium III Debian-Woody box:

configure --target=alpha-unknown-osf4.0 --prefix=$HOME/cross
make

The process fails on gas/config/tc-alpha.c.  I had to specify unknown
rather than dec because configure complained that ld and gas didn't know
what I was talking about.  The messages are:

------------------------------

gcc -DHAVE_CONFIG_H -I. -I. -I. -D_GNU_SOURCE -I. -I. -I../bfd
-I./config -I./../include -I./.. -I./../bfd -I./../intl -I../intl
-DLOCALEDIR="\"/home/hoodlum/cross/share/locale\""   -W -Wall
-Wstrict-prototypes -Wmissing-prototypes -g -O2 -c ./config/tc-alpha.c
./config/tc-alpha.c: In function `alpha_validate_fix':
./config/tc-alpha.c:1379: warning: unused parameter `f'
./config/tc-alpha.c: In function `tokenize_arguments':
./config/tc-alpha.c:1861: warning: unused variable `reloc_found_p'
./config/tc-alpha.c:1860: warning: unused variable `len'
./config/tc-alpha.c:1859: warning: unused variable `i'
./config/tc-alpha.c:1859: warning: unused variable `c'
./config/tc-alpha.c:1858: warning: unused variable `r'
./config/tc-alpha.c:1857: warning: unused variable `p'
./config/tc-alpha.c:2024: warning: label `err_report' defined but not
used
./config/tc-alpha.c: In function `find_opcode_match':
./config/tc-alpha.c:2127: warning: comparison between signed and
unsigned
./config/tc-alpha.c: In function `find_macro_match':
./config/tc-alpha.c:2240: warning: comparison between signed and
unsigned
./config/tc-alpha.c: In function `assemble_tokens':
./config/tc-alpha.c:2654: warning: implicit declaration of function
`ALPHA_RELOC_TABLE'
./config/tc-alpha.c:2654: invalid type argument of `->'
./config/tc-alpha.c: In function `s_alpha_comm':
./config/tc-alpha.c:4068: warning: unused parameter `ignore'
./config/tc-alpha.c: In function `s_alpha_rdata':
./config/tc-alpha.c:4184: warning: unused parameter `ignore'
./config/tc-alpha.c: In function `s_alpha_sdata':
./config/tc-alpha.c:4205: warning: unused parameter `ignore'
./config/tc-alpha.c: At top level:
./config/tc-alpha.c:5415: warning: function declaration isn't a
prototype
./config/tc-alpha.c:373: warning: `alpha_lit4_section' defined but not
used
./config/tc-alpha.c:385: warning: `alpha_lit4_symbol' defined but not
used
./config/tc-alpha.c:396: warning: `alpha_lit4_literal' defined but not
used
make[3]: *** [tc-alpha.o] Error 1
make[3]: Leaving directory `/home/hoodlum/cross/binutils-2.12/gas'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/hoodlum/cross/binutils-2.12/gas'
make[1]: *** [all-recursive-am] Error 2
make[1]: Leaving directory `/home/hoodlum/cross/binutils-2.12/gas'
make: *** [all-gas] Error 2

------------------------------------

So, I added the #ifdef RELOC_OP_P mentioned by Alan Modra for targetting
alpha-dec-vms from this message
(http://sources.redhat.com/ml/bug-binutils/2002-q2/msg00017.html). 
There were still a bunch of warnings, but it built.  However, the final
product fails to actually assemble anything.  It says "unknown opcode"
for most, if not all, of the load ops, and gives an "inappropriate
arguments" for jmp and ret ops.

My question is: Is it possible to build this cross compiler?  What am I
doing wrong? ..and.. What version of binutils should I use?  (I tried
2.12, BTW)

Thanks in advance,

- jim.

-- 
=============================================================
  james.dinan://umass@amherst || flatline@student.umass.edu
 have p.e.a.c.e ; love l.i.f.e ; find h.a.p.p.i.n.e.s.s. ($_)



More information about the Binutils mailing list