http://www.perlmonks.org?node_id=990893


in reply to how to Install/compile module as single threaded

undefined symbol: Perl_Gthr_key_ptr

That symbol is defined in 5.10.1 for the "x86_64-linux-thread-multi" architecture, but not for the "x86_64-linux" architecture.
You cannot use extensions (modules containing compiled-in C code) built by a perl with "x86_64-linux-thread-multi" architecture on a perl that has been built with "x86_64-linux" architecture (and vice-versa) - even if both perls have the same version number.
If you do that, you'll likely end up with errors of the sort you're seeing.

It all adds up to there being 2 separate perl executables, built with different architecures - one which needs to access /usr/local/lib/perl5/site_perl/5.10.1/x86_64-linux-thread-multi, and another that needs to access /usr/local/lib/perl5/site_perl/5.10.1/x86_64-linux.
If you want to update extensions for the latter, then you'll need to build those extensions using the latter.

Cheers,
Rob