From owner-freebsd-ports@FreeBSD.ORG Thu Jun 9 19:03:15 2011 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7C0D4106566B for ; Thu, 9 Jun 2011 19:03:15 +0000 (UTC) (envelope-from lcampbell@ironclad.mobi) Received: from mail-iy0-f182.google.com (mail-iy0-f182.google.com [209.85.210.182]) by mx1.freebsd.org (Postfix) with ESMTP id 54D358FC13 for ; Thu, 9 Jun 2011 19:03:15 +0000 (UTC) Received: by iyj12 with SMTP id 12so2284830iyj.13 for ; Thu, 09 Jun 2011 12:03:14 -0700 (PDT) MIME-Version: 1.0 Received: by 10.231.115.142 with SMTP id i14mr1262770ibq.139.1307644371103; Thu, 09 Jun 2011 11:32:51 -0700 (PDT) Received: by 10.231.185.212 with HTTP; Thu, 9 Jun 2011 11:32:51 -0700 (PDT) Date: Thu, 9 Jun 2011 13:32:51 -0500 Message-ID: From: L Campbell To: ale@freebsd.org, ports@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 Cc: Subject: databases/mysql55-server, Error: shared library "mysqlclient.18" does not exist X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Jun 2011 19:03:15 -0000 For some reason, I can't compile databases/mysql55-server on a fresh install; it errors out with $ cd /usr/ports/databases/mysql55-server && make ===> mysql-server-5.5.12 depends on file: /usr/local/bin/cmake - found ===> mysql-server-5.5.12 depends on shared library: mysqlclient.18 - not found ===> Verifying install for mysqlclient.18 in /usr/ports/databases/mysql55-client ===> Returning to build of mysql-server-5.5.12 Error: shared library "mysqlclient.18" does not exist *** Error code 1 The dependency on the library is set in Mk/bsd.database.mk: $ grep LIB_DEPENDS /usr/ports/Mk/bsd.database.mk | grep mysqlclient LIB_DEPENDS+= mysqlclient.${MYSQL${MYSQL_VER}_LIBVER}:${PORTSDIR}/${_MYSQL_CLIENT} Checking, the library is installed, except in ${LOCALBASE}/lib/mysql -- $ find /usr/local/lib -name libmysqlclient.so.18 /usr/local/lib/mysql/libmysqlclient.so.18 For some reason, LIB_DEPENDS isn't checking any subdirectories of ${LOCALBASE}/lib; I'm not sure if it's meant to check in any subdirectories. The quick fix I came up with is to symlink the library in /usr/local/lib/mysql to /usr/local/lib, e.g., $ ln -s /usr/local/lib/mysql/libmysqlclient.so.18 /usr/local/lib/libmysqlclient.so.18 Which fixes the problem. Can we change it such that either 1) The LIB_DEPENDS in bsd.database.mk checks the appropriate install directory for the MySQL client libs or 2) databases/mysqlX-client automatically symlinks the libraries into /usr/local/lib so that the install scripts pick them up properly. I can submit a PR and patches if necessary. Please CC me, as I am not subscribed to ports@. Thanks! L Campbell.