Tty.c: loadable library and perl binaries are mismatched
Asked Answered
S

1

6

I upgraded Ubuntu from zesty to bionic. In the process perl was upgraded from 5.24.1 to 5.26.1. Now I am getting this error when I try to install Expect.

Tty.c: loadable library and perl binaries are mismatched 

I have re-installed IO::Tty and that says it has installed correctly. There are other modules that are reporting similar errors.

Here is the full output from the failed Expect install.

Fetching http://www.cpan.org/authors/id/J/JA/JACOBY/Expect-1.35.tar.gz
-> OK
Unpacking Expect-1.35.tar.gz
Entering Expect-1.35
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.64 ... Yes (7.24)
Configuring Expect-1.35
Running Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Expect
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.json ...
Checking if you have Fcntl 0 ... Yes (1.13)
Checking if you have IO::Handle 0 ... Yes (1.36)
Checking if you have IO::Pty 1.11 ... Yes (1.12)
Checking if you have Errno 0 ... Yes (1.28)
Checking if you have Test::More 1.00 ... Yes (1.302162)
Checking if you have Exporter 0 ... Yes (5.72)
Checking if you have IO::Tty 1.11 ... Yes (1.12)
Checking if you have File::Temp 0 ... Yes (0.2309)
Checking if you have POSIX 0 ... Yes (1.76)
Checking if you have Carp 0 ... Yes (1.42)
Building and testing Expect-1.35
cp lib/Expect.pm blib/lib/Expect.pm
Manifying 1 pod document
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/01-test.t ....... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 14/14 subtests 
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/02-bc.t ......... 
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run 
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/03-log.t ........ 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 11/11 subtests 
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/04-multiline.t .. 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 33/33 subtests 
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/10-internal.t ... 
Dubious, test returned 1 (wstat 256, 0x100)
Failed 17/17 subtests 
Tty.c: loadable library and perl binaries are mismatched (got handshake key 0xdb80080, needed 0xde00080)
t/11-calc.t ....... 
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run 

Test Summary Report
-------------------
t/01-test.t     (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: Bad plan.  You planned 14 tests but ran 0.
t/02-bc.t       (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: No plan found in TAP output
t/03-log.t      (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: Bad plan.  You planned 11 tests but ran 0.
t/04-multiline.t (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: Bad plan.  You planned 33 tests but ran 0.
t/10-internal.t (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: Bad plan.  You planned 17 tests but ran 0.
t/11-calc.t     (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: No plan found in TAP output
Files=6, Tests=0,  2 wallclock secs ( 0.08 usr  0.03 sys +  1.87 cusr  0.21 csys =  2.19 CPU)
Result: FAIL
Failed 6/6 test programs. 0/0 subtests failed.
Makefile:856: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 1
-> FAIL Installing Expect failed. See /home/chronos/.cpanm/work/1554249881.4055/build.log for details. Retry with --force to force install it.
chronos@BattleShip:~/app$ perl -v

This is perl 5, version 26, subversion 1 (v5.26.1) built for x86_64-linux-gnu-thread-multi
(with 67 registered patches, see perl -V for more detail)

Copyright 1987-2017, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
Santa answered 3/4, 2019 at 0:14 Comment(1)
Related: #45001085 . Make sure PERL5LIB or PERL_LOCAL_LIB_ROOT aren't referring to any directories with old distributions in them.Harold
S
4

I deleted my ~/perl5 directory. Expect installed fine.

Santa answered 3/4, 2019 at 0:36 Comment(1)
Encountered this when dual booting Ubuntu 16.04 & 18.04 (with the same home dir). This is the solution. Actually got it when going 18.04->16.04.Dulia

© 2022 - 2024 — McMap. All rights reserved.