Compiling Sysbench on OS X Yosemite or Later

These instructions are applicable after cloning the git repository and generating the autoconfigure scripts.

git clone '' sysbench
cd sysbench

In order to build Sysbench1 with PostgreSQL and MariaDB support, you need to make sure both mysql_config and pg_config are in your path.

I use Zsh, so this is my way of doing it, when both Postgres and MariaDB have been installed with MacPorts.

path=( /opt/local/lib/mariadb-10.1/bin /opt/local/lib/postgresql96/bin $path )

Then run

./configure --with-pgsql --with-mysql --prefix=/path/of/your/choice

You are likely to get an error like

ld: library not found for -lgcc_s.10.4

if you do not also


before running make, while building the bundled LuaJit. This is documented in their installation instructions.

Of course, this isn’t taken care of by the wrapper Autotools, nor is there a configure flag to set this.

An alternative might be --with-system-luajit but that depends on your situation.

Then you finish it off with make install. Happy benchmarking.

1 I hope I’m linking to the right git repository.

4 thoughts on “Compiling Sysbench on OS X Yosemite or Later

  1. sysbench author here. Thanks for putting up this summary! I have a few questions to understand the mentioned issues.

    – do you build with GCC, rather than Clang/LLVM that are used on macOS by default? The reason I’m asking is that I have never had any issues like that on macOS with Clang. In fact, most sysbench development happens on my macOS laptop, and I’ve not even been aware of MACOSX_DEPLOYMENT_TARGET, which looks specific GCC/macOS. I’m happy to take care of that in configure/automake, I just want to understand it better.

    – what was the reason for building sysbench from source? doesn’t macports provide a sysbench build? I don’t use macports myself, but I know there are reasonably up-to-date builds in Homebrew. They also have an option to build with PostgreSQL support (brew install sysbench –with-postgresql)

    Anyway, you are welcome to report any sysbench-related issues in the Github tracker (yes, is the right project home URL). I usually respond quickly.

    1. I didn’t find sysbench in MacPorts.

      $ port search sysbench
      No match for sysbench found

      And I wanted to be sure I had both mysql and postgres support in my build. I don’t use homebrew.

      I use Clang to compile and build it — something in luajit seems to be expecting GCC. I’ve seen a similar error before.

  2. I was recompiling on OS X Mojave and got this error:

    ld: library not found for -lssl

    The solution is to run configure like so, when using MacPorts.

    LDFLAGS=-L/opt/local/lib ./configure –prefix=/of/your/choice –with-pgsql –with-mysql

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: