[erlang-questions] : ODBC library - link check failed on mac leopard
Dan Gudmundsson
dgud@REDACTED
Thu Jun 26 07:23:00 CEST 2008
I have filed an issue on it, will see if it makes to R12B-4
Ingela is on vacation but I know she have other stuff on her agenda
when she comes back :-)
/Dan
Geoff Cant wrote:
> "Peter Lemenkov" <lemenkov@REDACTED> writes:
>
>> 2008/6/25 wenew zhang <wenewboy@REDACTED>:
>>> error below:do you user mac now?
>> Yes, I'm a mac user.
>>
>>> so i think macport doesn't add the odbc suports in erlang,
>> Exactly.
>>
>> auriga:~ petro$ erl
>> Erlang (BEAM) emulator version 5.6.2 [source] [async-threads:0] [hipe]
>> [kernel-poll:false]
>>
>> Eshell V5.6.2 (abort with ^G)
>> 1> odbc:start().
>> ** exception error: undefined function odbc:start/0
>> 2>
>
> This is a problem I tend to fixup in macports - the odbc application
> needs to link (and link check) against libiodbc not libodbc. Libiodbc is
> shipped as part of Mac OS X (Tiger and Leopard I'm sure of) and provides
> the exact same API as libodbc.
>
> It'd be nice if there was a special case for darwin/macos in the
> configure script that would linkcheck against iodbc. Something like:
>
> diff --git a/lib/odbc/configure.in b/lib/odbc/configure.in
> index 114f86a..d1df895 100644
> --- a/lib/odbc/configure.in
> +++ lib/odbc/configure.in
> @@ -136,6 +136,16 @@ have_odbc_lib=no
>
> AC_SUBST(TARGET_FLAGS)
> case $host_os in
> + darwin*)
> + TARGET_FLAGS="-DUNIX"
> + AC_CHECK_LIB(pthread, pthread_create,
> + [AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have the pthread library (-lpthread).])
> + LIBS="$LIBS -lpthread"
> + have_pthread_lib=yes])
> + ODBC_LIB=-L"/usr/lib"
> + ODBC_INCLUDE="-I/usr/lib/include"
> + AC_CHECK_LIB(iodbc, SQLAllocHandle,[ODBC_LIB="$ODBC_LIB -liodbc" odbc_lib_link_sucess=yes])
> + ;;
> win32|cygwin)
> TARGET_FLAGS="-DWIN32"
> AC_CHECK_LIB(ws2_32, main)
>
> This was prepared for R12B-2 and works :
>
> 1> application:start(odbc).
> ok
>
> Available as a git patch at (http://git.erlang.geek.nz/?p=erlang-otp.git;a=commit;h=5d71d8f6c8a5743422c9d9104574d7fa4945a912).
>
> Maybe something like this could be rolled into R12B-4 ?
>
> Cheers,
More information about the erlang-questions
mailing list