Error: shared library "mysqlclient.18" does not exist

Greg Larkin glarkin at FreeBSD.org
Tue Mar 12 15:03:55 UTC 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 3/11/13 6:51 PM, Jeff Tipton wrote:
> On 03/12/2013 00:36, Greg Larkin wrote: On 3/11/13 6:21 PM, Jeff
> Tipton wrote:
>>>> On 03/12/2013 00:07, Greg Larkin wrote: On 3/11/13 5:42 PM,
>>>> Jeff Tipton wrote:
>>>>>>> On 03/11/2013 21:34, Jeff Tipton wrote:
>>>>>>>> On 03/11/2013 21:00, Greg Larkin wrote:
>>>>>>> On 3/11/13 2:47 PM, Jeff Tipton wrote:
>>>>>>>>>>> On 03/11/2013 20:31, Greg Larkin wrote: On
>>>>>>>>>>> 3/11/13 2:10 PM, Jeff Tipton wrote:
>>>>>>>>>>>>>> On 03/11/2013 20:00, Greg Larkin wrote:
>>>>>>>>>>>>>> On 3/11/13 12:59 PM, Jeff Tipton wrote:
>>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> I'm trying to set up security/maia,
>>>>>>>>>>>>>>>>> and this is the error message I
>>>>>>>>>>>>>>>>> get:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Error: shared library
>>>>>>>>>>>>>>>>> "mysqlclient.18" does not exist
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Of course, the library does exist
>>>>>>>>>>>>>>>>> :(
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> # ls /usr/local/lib/mysql/ 
>>>>>>>>>>>>>>>>> libmysqlclient.a
>>>>>>>>>>>>>>>>> libmysqlclient_r.a libmysqld.a
>>>>>>>>>>>>>>>>> libmysqlclient.so 
>>>>>>>>>>>>>>>>> libmysqlclient_r.so
>>>>>>>>>>>>>>>>> libmysqlservices.a 
>>>>>>>>>>>>>>>>> libmysqlclient.so.18 
>>>>>>>>>>>>>>>>> libmysqlclient_r.so.18 plugin
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> I googled about this, and I found
>>>>>>>>>>>>>>>>> 3 things to try but none of that
>>>>>>>>>>>>>>>>> was helpful here:
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 1. make a link: ln -s 
>>>>>>>>>>>>>>>>> /usr/local/lib/mysql/libmysqlclient.so.18
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>
>>>>>>>>>>>>>>>>> 
/usr/local/lib/libmysqlclient.so.18
>>>>>>>>>>>>>>>>> 2. Check the root's umask and the 
>>>>>>>>>>>>>>>>> directory permissions if they are 
>>>>>>>>>>>>>>>>> correct, and they are: # umask 22
>>>>>>>>>>>>>>>>> #ll /usr/local/lib |grep mysql
>>>>>>>>>>>>>>>>> lrwxr-xr-x   1 root wheel 41 Mar 11
>>>>>>>>>>>>>>>>> 16:25 libmysqlclient.so.18@ -> 
>>>>>>>>>>>>>>>>> /usr/local/lib/mysql/libmysqlclient.so.18
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>
>>>>>>>>>>>>>>>>> 
drwxr-xr-x 3 root wheel       512 Mar 11 16:22
>>>>>>>>>>>>>>>>> mysql/
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> # ll /usr/local/lib/mysql/ total
>>>>>>>>>>>>>>>>> 27276 -rw-r--r-- 1 root wheel
>>>>>>>>>>>>>>>>> 4844270 Mar 11 16:17
>>>>>>>>>>>>>>>>> libmysqlclient.a lrwxr-xr-x  1
>>>>>>>>>>>>>>>>> root wheel 20 Mar 11 16:22
>>>>>>>>>>>>>>>>> libmysqlclient.so@ ->
>>>>>>>>>>>>>>>>> libmysqlclient.so.18 -rwxr-xr-x 1
>>>>>>>>>>>>>>>>> root wheel 3364688 Mar 11 16:22 
>>>>>>>>>>>>>>>>> libmysqlclient.so.18* lrwxr-xr-x  1
>>>>>>>>>>>>>>>>> root wheel 16 Mar 11 16:22
>>>>>>>>>>>>>>>>> libmysqlclient_r.a@ ->
>>>>>>>>>>>>>>>>> libmysqlclient.a lrwxr-xr-x  1
>>>>>>>>>>>>>>>>> root wheel        17 Mar 11 16:22 
>>>>>>>>>>>>>>>>> libmysqlclient_r.so@ -> 
>>>>>>>>>>>>>>>>> libmysqlclient.so lrwxr-xr-x  1
>>>>>>>>>>>>>>>>> root wheel        17 Mar 11 16:22 
>>>>>>>>>>>>>>>>> libmysqlclient_r.so.18@ -> 
>>>>>>>>>>>>>>>>> libmysqlclient.so -rw-r--r-- 1
>>>>>>>>>>>>>>>>> root wheel 20019340 Mar  7 15:08
>>>>>>>>>>>>>>>>> libmysqld.a -rw-r--r--  1 root
>>>>>>>>>>>>>>>>> wheel 4598 Mar 11 16:17
>>>>>>>>>>>>>>>>> libmysqlservices.a drwxr-xr-x  2 
>>>>>>>>>>>>>>>>> root  wheel 512 Mar  8 19:01
>>>>>>>>>>>>>>>>> plugin/
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 3. Update the ports tree. Ports
>>>>>>>>>>>>>>>>> tree is up to date.
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Could someone, please, suggest what
>>>>>>>>>>>>>>>>> I could try to solve this?
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Thanks, Jeff
>>>>>>>>>>>>>> Hi Jeff,
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> At what point do you receive the error
>>>>>>>>>>>>>> message? Is it when you attempt to run
>>>>>>>>>>>>>> the executable built by the port?  If so,
>>>>>>>>>>>>>> please run the ldd command against the
>>>>>>>>>>>>>> executable and post the output back
>>>>>>>>>>>>>> here.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> Thank you, Greg
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> -- Greg Larkin
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> http://www.FreeBSD.org/           - The
>>>>>>>>>>>>>> Power To Serve
>>>>>>>>>>>>>> http://www.sourcehosting.net/     - 
>>>>>>>>>>>>>> Ready. Set. Code.
>>>>>>>>>>>>>> http://twitter.com/cpucycle/ - Follow
>>>>>>>>>>>>>> you, follow me Thank you, Greg, for the
>>>>>>>>>>>>>> reply. I get the error message while 
>>>>>>>>>>>>>> compiling security/maia port. mysql
>>>>>>>>>>>>>> client itself is working ok, I can
>>>>>>>>>>>>>> connect to my database server.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> ldd output: # ldd /usr/local/bin/mysql 
>>>>>>>>>>>>>> /usr/local/bin/mysql: libreadline.so.8
>>>>>>>>>>>>>> => /lib/libreadline.so.8 (0x800ab5000)
>>>>>>>>>>>>>> libz.so.6 => /lib/libz.so.6 (0x800cf5000)
>>>>>>>>>>>>>> libstdc++.so.6 => /usr/lib/libstdc++.so.6
>>>>>>>>>>>>>> (0x800f09000) libm.so.5 => /lib/libm.so.5
>>>>>>>>>>>>>> (0x801219000) libgcc_s.so.1 =>
>>>>>>>>>>>>>> /lib/libgcc_s.so.1 (0x80143a000)
>>>>>>>>>>>>>> libthr.so.3 => /lib/libthr.so.3 
>>>>>>>>>>>>>> (0x801647000) libc.so.7 =>
>>>>>>>>>>>>>> /lib/libc.so.7 (0x801869000)
>>>>>>>>>>>>>> libncurses.so.8 => /lib/libncurses.so.8
>>>>>>>>>>>>>> (0x801bbc000)
>>>>>>>>>>>>>> 
>>>>>>>>>>> Hi Jeff,
>>>>>>>>>>> 
>>>>>>>>>>> Can you post the relevant bits of build output
>>>>>>>>>>> where the error message shows up?  If it
>>>>>>>>>>> happens during the configure phase of the port
>>>>>>>>>>> build, you'll also want to post the end of the
>>>>>>>>>>> config.log file found in the port work
>>>>>>>>>>> directory.
>>>>>>>>>>> 
>>>>>>>>>>> Thank you, Greg
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> I tried to run "make" several times, and
>>>>>>>>>>> previously some build depends were compiled.
>>>>>>>>>>> But now the "work" directory doesn't even get
>>>>>>>>>>> created, and the process stops immediately:
>>>>>>>>>>> 
>>>>>>>>>>> /usr/ports/security/maia# make install clean
>>>>>>>>>>> ===> maia-1.0.3.r1575_3 depends on shared
>>>>>>>>>>> library: mysqlclient.18 - not found ===>
>>>>>>>>>>> Verifying install for mysqlclient.18 in 
>>>>>>>>>>> /usr/ports/databases/mysql55-client ===>
>>>>>>>>>>> Returning to build of maia-1.0.3.r1575_3 Error:
>>>>>>>>>>> shared library "mysqlclient.18" does not exist
>>>>>>>>>>> *** [lib-depends] Error code 1
>>>>>>>>>>> 
>>>>>>>>>>> Stop in /basejail/usr/ports/security/maia. 
>>>>>>>>>>> /usr/ports/security/maia#
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>> Ok, it looks like something is messed up with your
>>>>>>> ldconfig search path.  To confirm that, please run this
>>>>>>> command and post results back here:
>>>>>>> 
>>>>>>> ldconfig -r| grep mysql
>>>>>>> 
>>>>>>> Thank you, Greg
>>>>>>>>> _______________________________________________ 
>>>>>>>>> freebsd-questions at freebsd.org mailing list 
>>>>>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>>>>>>>>>
>>>>>>>>> 
To unsubscribe, send any mail to
>>>>>>>>> "freebsd-questions-unsubscribe at freebsd.org"
>>>>>>>> # ldconfig -r| grep mysql search directories: 
>>>>>>>> /lib:/usr/lib:/usr/lib/compat:/usr/local/lib:/usr/local/lib/dovecot:/usr/local/lib/mysql:/usr/local/lib/pth
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>
>>>>>>>> 
218:-lmysqlclient.18 => /usr/local/lib/libmysqlclient.so.18
>>>>>>>> 219:-lmysqlclient.18 => 
>>>>>>>> /usr/local/lib/mysql/libmysqlclient.so.18 
>>>>>>>> 220:-lmysqlclient_r.18 => 
>>>>>>>> /usr/local/lib/mysql/libmysqlclient_r.so.18
>>>>>>>> 
>>>>>>>> I installed both mysql client and server from ports.
>>>>>>>> The versions are: mysql-client-5.5.30
>>>>>>>> mysql-server-5.5.30
>>>>>>>> 
>>>>>>>> _______________________________________________ 
>>>>>>>> freebsd-questions at freebsd.org mailing list 
>>>>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>>>>>>>>
>>>>>>>> 
To unsubscribe, send any mail to
>>>>>>>> "freebsd-questions-unsubscribe at freebsd.org"
>>>>>>> Thank you, Greg. As a result, databases/mysql55-client
>>>>>>> got rebuilt, so I lost the beginning of the log. The
>>>>>>> end is this:
>>>>>>> 
>>>>>>> [100%] Built target mysqlshow Linking CXX executable 
>>>>>>> mysqlslap cd 
>>>>>>> /var/ports/basejail/usr/ports/databases/mysql55-client/work/mysql-5.5.30/client
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>
>>>>>>> 
&& /usr/local/bin/cmake -E cmake_link_script
>>>>>>> CMakeFiles/mysqlslap.dir/link.txt --verbose=1
>>>>>>> /usr/bin/c++ -O2 -pipe -fno-strict-aliasing -Wall
>>>>>>> -Wno-unused-parameter -fno-implicit-templates
>>>>>>> -fno-exceptions -fno-rtti -O2 -pipe 
>>>>>>> -fno-strict-aliasing -DDBUG_OFF 
>>>>>>> CMakeFiles/mysqlslap.dir/mysqlslap.c.o  -o mysqlslap 
>>>>>>> -pthread ../libmysql/libmysqlclient.a -pthread -lz -lm 
>>>>>>> /usr/local/bin/cmake -E cmake_progress_report 
>>>>>>> /var/ports/basejail/usr/ports/databases/mysql55-client/work/mysql-5.5.30/CMakeFiles
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>
>>>>>>> 
[100%] Built target mysqlslap /usr/local/bin/cmake -E
>>>>>>> cmake_progress_start 
>>>>>>> /var/ports/basejail/usr/ports/databases/mysql55-client/work/mysql-5.5.30/CMakeFiles
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>
>>>>>>> 
0
>>>>>>> ===>  Installing for mysql-client-5.5.30 ===>
>>>>>>> Generating temporary packing list ===>  Checking if 
>>>>>>> databases/mysql55-client already installed ===> 
>>>>>>> mysql-client-5.5.30 is already installed You may wish
>>>>>>> to ``make deinstall'' and install this port again by
>>>>>>> ``make reinstall'' to upgrade it properly. If you
>>>>>>> really wish to overwrite the old port of
>>>>>>> databases/mysql55-client without deleting it first, set
>>>>>>> the variable "FORCE_PKG_REGISTER" in your environment
>>>>>>> or the "make install" command line. *** 
>>>>>>> [check-already-installed] Error code 1
>>>>>>> 
>>>>>>> Stop in /basejail/usr/ports/databases/mysql55-client. +
>>>>>>> echo '===> Returning to build of maia-1.0.3.r1575_3'
>>>>>>> ===> Returning to build of maia-1.0.3.r1575_3 +
>>>>>>> /sbin/ldconfig -32 -r + /usr/bin/grep -vwF -e
>>>>>>> /usr/local/lib/compat/pkg + /usr/bin/grep -qwE -e
>>>>>>> '-lmysqlclient\.18' + echo 'Error: shared library
>>>>>>> "mysqlclient.18" does not exist' Error: shared library
>>>>>>> "mysqlclient.18" does not exist + false 
>>>>>>> /usr/ports/security/maia#
>>>> Try one more test for me - deselect the "RAR" option in the
>>>> maia port, run "make clean build" and let me know what
>>>> happens.
>>>>> _______________________________________________ 
>>>>> freebsd-questions at freebsd.org mailing list 
>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>>>>> To unsubscribe, send any mail to 
>>>>> "freebsd-questions-unsubscribe at freebsd.org"
>>>> Ok, deselected RAR. Output:
>>>> 
>>>> /usr/ports/security/maia# make clean build ===>  Cleaning
>>>> for maia-1.0.3.r1575_3 ===>  Found saved configuration for 
>>>> maia-1.0.3.r1575_3 ===>  Extracting for maia-1.0.3.r1575_3
>>>> => SHA256 Checksum OK for maia-1.0.3-r1575.tar.gz. ===>
>>>> Patching for maia-1.0.3.r1575_3 ===>   maia-1.0.3.r1575_3
>>>> depends on shared library: mysqlclient.18 - found ===>
>>>> Configuring for maia-1.0.3.r1575_3 /usr/ports/security/maia#
>>>> 
> Ok, that means you can go and run "make install" if you don't
> actually need the RAR option.  If you do need that option, then I
> need to look into what the port is trying to do and then file a PR
> to fix it.
> 
> Regards, Greg
> 
> Yes, it starts building. Thank you! I'm not sure, though, what
> exactly I am losing. I tought RAR is for scanning RARed
> attatchments (which is important), but then there's also UNRAR
> which I left selected.

Hi Jeff,

Good news and thanks for the update.  The maia Makefile seems to imply
that RAR support can be provided either by archivers/rar or
archivers/unrar, and if so, those options should likely be exclusive.

I found some problems related to detecting the MySQL dependencies in
general, too.  I'll create a PR to fix these issues.

In the mean time, can you test whether maia does what you want with
just the UNRAR option enabled?

Thank you,
Greg
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.13 (Darwin)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlE/Q8kACgkQ0sRouByUApDjIwCgqujnwXRPxrNq4/ARjK6Tv98m
5qsAn37lrANQqCp9op1Y4WPZXz1gcYn/
=NQdO
-----END PGP SIGNATURE-----


More information about the freebsd-questions mailing list