[erlang-questions] Building OTP 18.3 on OS X "ODBC library - header check failed"

Weston C <>
Fri Aug 19 01:18:43 CEST 2016


So I'm trying to build OTP 18.3 on OS X 10.9 Mavericks, and seem to be
running into a problem where odbc libraries/headers aren't being
found.

The first time I tried running `configure` I got the message:

    *********************************************************************
    **********************  APPLICATIONS DISABLED  **********************
    *********************************************************************

    odbc           : ODBC library - header check failed

I went looking for any information I could find about ODBC libraries
on OS X, and found one source which said "Since OS X 10.9 (Mavericks)
Apple stopped including the iODBC SQL header files"
(http://stackoverflow.com/questions/26210317/installation-of-rodbc-roracle-packages-on-os-x-mavericks
), suggesting that might be the key issue.

So I grabbed libiodbc from iodbc.org, built the OS X version, and tried again:

    odbc           : ODBC library - header check failed

Hmmm. OK, apparently building for OS X drops the libraries/headers
into /Library/Frameworks. Maybe the configuration process for OTP
doesn't know to look there? So I tried building libiodbc again, this
time with --prefix=/usr/local. And:

    odbc           : ODBC library - header check failed

I can verify that /usr/local/include contains iodbcext.h, iodbcunix.h,
isqlext.h, sql.h, sqltypes.h, iodbcinst.h, isql.h, isqltypes.h,
odbcinst.h, sqlext.h, sqlucode.h, so it definitely seems like the
headers should be discoverable.

I looked around for any earlier discussion on the mailing list about
odbc and builds, and found this old message:

https://groups.google.com/forum/#!msg/erlang-programming/XGkOnkp012g/TpJRRTvlbugJ

Which suggests there was a time when the configuration process didn't
recognize iodbc searches on OS X... but a quick check of
lib/odbc/configure.in *seems* to show the patch suggested in that
message was taken in and this should no longer be an issue.

What am I missing? Is there another way to tell configure where it
should be looking for libiodbc? Something else needed?


More information about the erlang-questions mailing list