locked_user sundialsvc4 has asked for the wisdom of the Perl Monks concerning the following question:

I think I'm scroo'd... :-/

When installing on shared-hosting (not my development box) I'm getting this:

DBI Connection failed: Undefined subroutine &DBD::mysql::db::_login ...

I have no idea... and no time...

I did not observe obvious errors in the install of DBD::mysql although I had to force-install to avoid tests ... I don't have a "localhost database" to talk to, and the well-intentioned test suite wants such a thing.

Replies are listed 'Best First'.
Re: Undefined subroutine &DBD::mysql::db::_login
by locked_user sundialsvc4 (Abbot) on Feb 09, 2009 at 05:39 UTC

    I just did a fresh (local...) install of DBD::mysql and it completed with no messages except:   Multiple copies of Driver.xst found...
    ... when doing notest install DBD::mysql.

    This message doesn't seem alarming:   Unrecognized argument in LIBS ignored: '-rdynamic'

    Not sure what to make of:

    Warning: duplicate function definition 'do' detected in mysql.xs, line + 225 Warning: duplicate function definition 'rows' detected in mysql.xs, li +ne 650

    The message in question obviously refers to (1) my copy and (2) the hosting service's copy, respectively. All seems well...

    The version (4.010) is the same one I'm using in development.

    DBI (1.607) is also the same version I'm using in development...

Re: Undefined subroutine &DBD::mysql::db::_login
by Anonymous Monk on Feb 09, 2009 at 04:15 UTC
    upgrade DBI/DBD::mysql...
Re: Undefined subroutine &DBD::mysql::db::_login
by locked_user sundialsvc4 (Abbot) on Feb 12, 2009 at 07:03 UTC

    I am quite confused by this ... when I followed-up looking into this on the host system, the package in which "'_login cannot be found" is not there at all! Why?

    The install attempt failed only one self-test ... a seemingly inconsequential problem with a blob field ... several more were "skipped" for lack of a test database ... but how can "db.pm" be not there?

    I sure-as-hell have egg on my face from this (to put it very mildly...), and I don't know why it happened. My development box has the package in question, and I guess I don't know where it came from, since I apparently couldn't repeat the process! Why did a "clean install" fail to work?!

      db.pm isn't there because the package is defined in the same file, Pg.pm, at line 235. I think _login is acting that way because of some XS binding not working properly, that is it's a C library routine and not a Perl function, but that's just a hunch.