Christoph Biedl wrote:
>/tmp/libhash-sharedmem-perl-0.002/blib/arch/auto/Hash/SharedMem/SharedMem.so:
>undefined symbol: __sync_bool_compare_and_swap_8 at
>/usr/lib/perl/5.14/DynaLoader.pm line 184.
>
>Could you shed any light on this?

That looks like the machine doesn't support atomic 64-bit
compare-and-swap, or at least the compiler thinks it doesn't.  The module
is fundamentally reliant on having access to such a CPU instruction,
and won't be portable to pure 32-bit architectures.  This is actually
the first such failure I've seen, though.  Note that the nominally 32-bit
x86 acquired the requisite 64-bit instruction (cmpxchg8b) many years ago,
and so there are plenty of machines that support that without being fully
64-bit.  I've also seen a successful test on 32-bit ARM (little-endian).

For a big-endian test, the first platform I'd look for is SPARC 64-bit.
I don't have ready access to one myself.  Regrettably, the CPAN Testers
results are almost all for amd64, with a smattering of x86 and the
aforementioned ARM.  I'm not aware of anyone having actually run it on
a big-endian machine so far.  The big-endian magic is thus theoretical
and untested, but I have considerable confidence in it.

-zefram


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to