[Catalyst] install_driver(mysql) failed:

Robyn Jonahs learn.catalyst at gmail.com
Mon Apr 2 04:22:02 GMT 2012


Ok so if I remove the link or leave it, the output from otool -L is

/FOO/perl5/perlbrew/perls/perl-5.14.2/lib/site_perl/5.14.2/darwin-2level/au=
to/DBD/mysql/mysql.bundle:
    libmysqlclient.18.dylib (compatibility version 18.0.0, current version
18.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 125.2.11)

Which I did, but I did not understand what to do with the info. Any help
there?


I can also do the fix at the link by setting the path to the file in the
environment variable
export DYLD_LIBRARY_PATH=3D"$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

I don't have an indexer or /usr/local/bin/search files so I don't know what
to do with the install_name_tool exactly to set the paths. Won't this go
away if the system gets updated link the symbolic link?

sudo install_name_tool -change libmysqlclient.18.dylib
/usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/bin/indexer
2
3
4sudo install_name_tool -change libmysqlclient.18.dylib
/usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/bin/search

It seems that adding it to the path for DYLD_LIBRARY_PATH is safe and
stable and local so system updates are not a problem.



On Sun, Apr 1, 2012 at 5:51 PM, Daniel J. Luke <dluke at geeklair.net> wrote:

> On Apr 1, 2012, at 4:24 PM, Robyn Jonahs wrote:
> >
> > ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib
> /usr/lib/libmysqlclient.18.dylib
>
> I guess that works, but you usually don't want to mess around with system
> locations as updates from Apple might interfere with your changes there..=
.)
>
> > The problem may have been caused by the mysql installation from root and
> the perl installation being local?
>
> If you run the otool command I recommended, you would know more.
>
> I don't use mysql, so I haven't had this issue and don't know offhand what
> is specifically going on for you.
>
> What likely happened is that DBD::mysql built with an incorrect
> install_name set for libmysqlclient.
>
> The page you linked to showed how you can use install_name_tool to change
> the location dyld would look for to find that library at runtime (this ge=
ts
> set at build time).
>
> It's also possible that the install_name in libmysqlclient got set wrong
> when it was built, so the wrong path got set on your DBD::mysql install
> (install_name_tool could be used to fix both, in that case).
>
> By adding the symlink there, you're relying on the default fallback
> behavior of dyld (see DYLD_FALLBACK_LIBRARY_PATH in man dyld) to find the
> lib.
>
> --
> Daniel J. Luke
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D+
> | *---------------- dluke at geeklair.net ----------------* |
> | *-------------- http://www.geeklair.net -------------* |
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D+
> |   Opinions expressed are mine and do not necessarily   |
> |          reflect the opinions of my employer.          |
> +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D+
>
>
>
>
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive:
> http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20120402/3a679=
588/attachment.htm


More information about the Catalyst mailing list