#35042: cyrus-sasl2 +sql rev-upgrade problem in presence of non-macports libmysqlclient.dylib ------------------------------+------------------------- Reporter: robsonpeixoto@… | Owner: jmpp@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.1 Resolution: invalid | Keywords: rev-upgrade Port: cyrus-sasl2 | ------------------------------+------------------------- Changes (by cal@…): * status: new => closed * resolution: => invalid Comment: The problem was caused by the `libmysqlclient.18.dylib` file the build linked against. Linking against a library on Macs works like this: - find the library you want to link - Get its ID loadcommand (run otool -L on the file, it's the first line, usually an absolute path, as opposed to Linux, where the paths are usually relative) - Copy the path mentioned there into your binary So we know from the rev-upgrade output that this copied path is `libmysqlclient.18.dylib`, which is relative, which causes rev-upgrade to try and find a file `libmysqlclient.18.dylib` in whatever directory it runs in. It fails to locate this file and assumes the binary is broken. The problem doesn't occur with MacPorts `libmysqlclient.dylib`, because its ID loadcommand correctly contains the absolute path: {{{ :) clemens@cSchlepptop:~$ otool -L /opt/local/lib/mysql55/mysql/libmysqlclient.18.dylib /opt/local/lib/mysql55/mysql/libmysqlclient.18.dylib: /opt/local/lib/mysql55/mysql/libmysqlclient.18.dylib (compatibility version 18.0.0, current version 18.0.0) }}} Anyway, glad you could solve this. -- Ticket URL: <https://trac.macports.org/ticket/35042#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS