Re: headers for odbc functions
"James K. Lowden" <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 7 May 2012 20:30:27 +0000 "Haszlakiewicz, Eric" <[email protected]> wrote: > Now that I installed unixODBC and configured FreeTDS with that I'm > able to compile my program. It's a bit confusing since the FreeTDS > user guide claims it implements the ODBC functions, but it's not > usable w/o the other package. To be precise, FreeTDS *does* implement the ODBC functions. It doesn't include the declarations (the header files) because it shares them with other ODBC drivers. I'm open to suggestions. From where I sit, it's a packaging problem. FreeTDS compiles an ODBC driver in the context of a set of declarations and symbolic constants that are controlled externally. It requires the header files in the same way you'd need Firebird headers to build a Firebird plug-in or (I guess) CUPS headers to build a CUPS driver. The problem with including those headers in the FreeTDS distibution, apart from the work involved in doing that and keeping them updated, is that it wouldn't really help. Instead, the naive user lands a little deeper in the weeds: compilation might go nicely using the included headers, but what if they don't match what's installed? How will the installation process integrate the driver into the existing ODBC structure? The best alarm is correct, immediate, and noisy. As it stands, the user must take some positive action to build the ODBC driver and, if the headers aren't found, some positive action to get them or point configure at them. Those requirement go some distance to ensure the resulting binary will work with the installed Driver Manager. --jkl