in reply to SQLite.c: loadable library and perl binaries are mismatched

it looks to me that there is some mismatch between the whatever Perl executable you are currently using and the Perl libraries the DBD::SQLite binary library was linked to when you first installed it. You probably have 2 versions (or more) of Perl in your system (that means not only a Perl binary but also a perl library e.g. /usr/lib64/libperl.so.5.26).

How to fix this: hmmmm, very simplistic: how about installing perlbrew and then once you select the Perl of your choice you cpanm install the module you want.

Or, if you want to have only one Perl version in your system, erase all other binaries, libraries and cpan[m]'s of any other Perl. I would take this approach but if you had been installing modules using 2 different Perls you have a serious problem and probably you do not want to start erasing files as root.

bw, bliako

Replies are listed 'Best First'.
Re^2: SQLite.c: loadable library and perl binaries are mismatched
by swl (Prior) on Mar 25, 2019 at 02:55 UTC

    DBD::SQLite builds against its own copy of SQLite by default. Use of the system copy needs manual intervention in the Makefile.PL.

    https://metacpan.org/source/ISHIGAKI/DBD-SQLite-1.62/Makefile.PL#L126

    That said, it's not clear if this implementation uses the packaged or system version, though, and the recommendation to use perlbrew is good advice in any case.

    edit: I'm too used to Strawberry perl where it comes as a vendor package. It's not core so if the system perl is used, and packages are installed outside the perl tree, then they will need to be updated when perl is updated. More reason to use perlbrew or similar.