mksqlite compilation for macOS
RSKtools relies on mksqlite for SQLite support in MATLAB.
Compiling
mksqlite ships MEX files for Windows (32- and 64-bit) and Linux (64-bit), but macOS users are left high and dry. To make things more turnkey for users, RSKtools ships with binaries for all three platforms; that means macOS binaries for mksqlite need to be compiled additionally.
- Download the newest source release.
You can get it from the mksqlite SourceForge project page: https://sourceforge.net/projects/mksqlite/ Click the “Files” tab, then pick the newest-src.zip
file. - Unpack the source release, and apply modifications to the source as necessary. See the section below.
- Launch MATLAB.
- If
mex -setup
reports an error, replace the files in/Applications/MATLAB_R2015b.app/bin/maci64/mexopts
with the contents of macOS mexopts.tar.gz- This is basically the same fix as described at https://www.mathworks.com/matlabcentral/answers/246507, but updated to be nonspecific with regards to the macOS SDK.
- Change the current folder to wherever you unpacked the source release.
- Run
buildit
. It should run successfully and generatemksqlite.mexmaci64
in the current folder.
Modifications
As macOS isn't terribly well-supported by the mksqlite maintainer, sometimes modifications to the source are necessary before they will work or even compile.
v2.5.0
buildit.m:131
:if 0
→if 1