[CCC DEV] 64-bit build attempt

Adam Sampson ats at offog.org
Tue Apr 23 15:13:54 BST 2013

Matt Jadud <matt at jadud.com> writes:

> gcc [...] -lm [...] -ltvm -ldl

That's a link order problem, I think -- libtvm uses symbols from libm,
so -lm needs to come after -ltvm. Recent versions of binutils are
pickier about this, which I guess is why you're seeing it on Ubuntu
now. Pull request sent with a fix.

However, even if you fix that, you'll get lots of warnings and
(eventually) link errors later in the build process, because none of the
FFI stuff can work with a 64-bit libtvm -- you can't fit a 64-bit native
pointer into a 32-bit Transputer word. So I'm not sure that you
necessarily want to do a 64-bit tvm build in the first place, until we
design a 64-bit Transputer or redesign the FFI again or... something else.

(There are also 64-bit cleanliness problems in occ21, which it currently
works around on AMD64 by cross-building as an IA32 executable -- which
(a) is horrid and (b) only works if you've actually got a 32-bit cross
toolchain installed... so we should probably fix that in the future as
well. From what I remember it's not especially tricky, just tedious.)


Adam Sampson <ats at offog.org>                         <http://offog.org/>

More information about the developers mailing list