readline and the Mac build

It seems "readline" isn't linked in the Mac build and installation. Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt. Regards, -m. $ sudo port list | grep readline gauche-readline @0.1 devel/gauche-readline hs-readline @1.0.1.0 devel/hs-readline pure-readline @0.1 devel/pure-readline readline @6.2.000 devel/readline readline-4 @4.3 devel/readline-4 readline-5 @5.2.014 devel/readline-5 ... ... $ more config.log | grep readline configure:18493: checking readline/readline.h usability configure:18493: checking readline/readline.h presence configure:18493: checking for readline/readline.h configure:18495: checking for readline in -lreadline configure:18520: gcc -o conftest -g conftest.c -lreadline >&5 configure:18631: checking for rl_completion_matches in -lreadline configure:18656: gcc -o conftest -g conftest.c -lreadline -lreadline
&5 | #include <readline/readline.h> ac_cv_header_readline_readline_h=yes ac_cv_lib_readline_readline=yes ac_cv_lib_readline_rl_completion_matches=yes
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

On 26-11-2012 08:40:41 +0100, Masood Mortazavi wrote:
It seems "readline" isn't linked in the Mac build and installation.
Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt.
fabian% scanmacho --needed install/bin/mclient |grep readline x86_64 MH_EXECUTE /Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libmapi.6.dylib,/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libstream.3.dylib,/Volumes/scratch/gentoo/x86_64/lib/libz.1.dylib,/Volumes/scratch/gentoo/x86_64/lib/libbz2.1.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libssl.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcrypto.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/lib/libreadline.6.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcurl.4.dylib,/Volumes/scratch/gentoo/x86_64/lib/libiconv.2.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/gcc/x86_64-apple-darwin9/4.2.1/libgcc_s.1.dylib,/usr/lib/libSystem.B.dylib install/bin/mclient fabian% ./install/bin/mclient --version mclient, the MonetDB interactive terminal (Oct2012-8324309eddfb) support for command-line editing compiled-in character encoding: UTF-8 Seems to be working fine for me? Fabian -- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home _______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

On my system, with default (no argument or options) configure, make and make install, I have: masood$ mclient --version mclient, the MonetDB interactive terminal (unreleased) character encoding: UTF-8 despite the fact that readline (headers and libraries) seem to be installed under /opt/local. Thanks, - m. On Wed, Nov 28, 2012 at 4:44 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 26-11-2012 08:40:41 +0100, Masood Mortazavi wrote:
It seems "readline" isn't linked in the Mac build and installation.
Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt.
fabian% scanmacho --needed install/bin/mclient |grep readline x86_64 MH_EXECUTE
/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libmapi.6.dylib,/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libstream.3.dylib,/Volumes/scratch/gentoo/x86_64/lib/libz.1.dylib,/Volumes/scratch/gentoo/x86_64/lib/libbz2.1.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libssl.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcrypto.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/lib/libreadline.6.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcurl.4.dylib,/Volumes/scratch/gentoo/x86_64/lib/libiconv.2.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/gcc/x86_64-apple-darwin9/4.2.1/libgcc_s.1.dylib,/usr/lib/libSystem.B.dylib install/bin/mclient fabian% ./install/bin/mclient --version mclient, the MonetDB interactive terminal (Oct2012-8324309eddfb) support for command-line editing compiled-in character encoding: UTF-8
Seems to be working fine for me?
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

What does grep -i readline <BUILDDIR>/config.* say? ----- Original Message -----
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version mclient, the MonetDB interactive terminal (unreleased) character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
Thanks, - m.
On Wed, Nov 28, 2012 at 4:44 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 26-11-2012 08:40:41 +0100, Masood Mortazavi wrote:
It seems "readline" isn't linked in the Mac build and installation.
Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt.
fabian% scanmacho --needed install/bin/mclient |grep readline x86_64 MH_EXECUTE
/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libmapi.6.dylib,/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libstream.3.dylib,/Volumes/scratch/gentoo/x86_64/lib/libz.1.dylib,/Volumes/scratch/gentoo/x86_64/lib/libbz2.1.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libssl.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcrypto.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/lib/libreadline.6.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcurl.4.dylib,/Volumes/scratch/gentoo/x86_64/lib/libiconv.2.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/gcc/x86_64-apple-darwin9/4.2.1/libgcc_s.1.dylib,/usr/lib/libSystem.B.dylib install/bin/mclient fabian% ./install/bin/mclient --version mclient, the MonetDB interactive terminal (Oct2012-8324309eddfb) support for command-line editing compiled-in character encoding: UTF-8
Seems to be working fine for me?
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

On Wed, Nov 28, 2012 at 11:10 PM, Stefan Manegold <Stefan.Manegold@cwi.nl>wrote:
What does
grep -i readline <BUILDDIR>/config.*
say?
config.log:configure:18493: checking readline/readline.h usability config.log:configure:18493: checking readline/readline.h presence config.log:configure:18493: checking for readline/readline.h config.log:configure:18495: checking for readline in -lreadline config.log:configure:18520: gcc -o conftest -g conftest.c -lreadline
&5 config.log:configure:18631: checking for rl_completion_matches in -lreadline config.log:configure:18656: gcc -o conftest -g conftest.c -lreadline -lreadline >&5 config.log:| #include <readline/readline.h> config.log:ac_cv_header_readline_readline_h=yes config.log:ac_cv_lib_readline_readline=yes config.log:ac_cv_lib_readline_rl_completion_matches=yes config.log:READLINE_INCS='' config.log:READLINE_LIBS='' config.status:S["READLINE_INCS"]="" config.status:S["READLINE_LIBS"]=""
----- Original Message -----
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version mclient, the MonetDB interactive terminal (unreleased) character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
Thanks, - m.
On Wed, Nov 28, 2012 at 4:44 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 26-11-2012 08:40:41 +0100, Masood Mortazavi wrote:
It seems "readline" isn't linked in the Mac build and installation.
Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt.
fabian% scanmacho --needed install/bin/mclient |grep readline x86_64 MH_EXECUTE
/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libmapi.6.dylib,/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libstream.3.dylib,/Volumes/scratch/gentoo/x86_64/lib/libz.1.dylib,/Volumes/scratch/gentoo/x86_64/lib/libbz2.1.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libssl.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcrypto.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/lib/libreadline.6.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcurl.4.dylib,/Volumes/scratch/gentoo/x86_64/lib/libiconv.2.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/gcc/x86_64-apple-darwin9/4.2.1/libgcc_s.1.dylib,/usr/lib/libSystem.B.dylib
install/bin/mclient fabian% ./install/bin/mclient --version mclient, the MonetDB interactive terminal (Oct2012-8324309eddfb) support for command-line editing compiled-in character encoding: UTF-8
Seems to be working fine for me?
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

Specifying --with-readline=/opt/local fills up the READLINE_LIBS and INCS, and adds #define HAVE_LIBREADLINE 1, as expected However, some other build issues rear there heads which I need to solve now. Thanks, - m. On Thu, Nov 29, 2012 at 1:11 PM, Masood Mortazavi <masoodmortazavi@gmail.com
wrote:
On Wed, Nov 28, 2012 at 11:10 PM, Stefan Manegold <Stefan.Manegold@cwi.nl>wrote:
What does
grep -i readline <BUILDDIR>/config.*
say?
config.log:configure:18493: checking readline/readline.h usability config.log:configure:18493: checking readline/readline.h presence config.log:configure:18493: checking for readline/readline.h config.log:configure:18495: checking for readline in -lreadline config.log:configure:18520: gcc -o conftest -g conftest.c -lreadline
&5 config.log:configure:18631: checking for rl_completion_matches in -lreadline config.log:configure:18656: gcc -o conftest -g conftest.c -lreadline -lreadline >&5 config.log:| #include <readline/readline.h> config.log:ac_cv_header_readline_readline_h=yes config.log:ac_cv_lib_readline_readline=yes config.log:ac_cv_lib_readline_rl_completion_matches=yes config.log:READLINE_INCS='' config.log:READLINE_LIBS='' config.status:S["READLINE_INCS"]="" config.status:S["READLINE_LIBS"]=""
----- Original Message -----
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version mclient, the MonetDB interactive terminal (unreleased) character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
Thanks, - m.
On Wed, Nov 28, 2012 at 4:44 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 26-11-2012 08:40:41 +0100, Masood Mortazavi wrote:
It seems "readline" isn't linked in the Mac build and installation.
Configure or package repository don't indicate any issues, and yet history completions fail on mclient's sql prompt.
fabian% scanmacho --needed install/bin/mclient |grep readline x86_64 MH_EXECUTE
/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libmapi.6.dylib,/Volumes/scratch/monet/GNU-Darwin-x86_64-propcheck-8324309eddfb-Oct2012/install/lib/libstream.3.dylib,/Volumes/scratch/gentoo/x86_64/lib/libz.1.dylib,/Volumes/scratch/gentoo/x86_64/lib/libbz2.1.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libssl.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcrypto.1.0.0.dylib,/Volumes/scratch/gentoo/x86_64/lib/libreadline.6.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/libcurl.4.dylib,/Volumes/scratch/gentoo/x86_64/lib/libiconv.2.dylib,/Volumes/scratch/gentoo/x86_64/usr/lib/gcc/x86_64-apple-darwin9/4.2.1/libgcc_s.1.dylib,/usr/lib/libSystem.B.dylib
install/bin/mclient fabian% ./install/bin/mclient --version mclient, the MonetDB interactive terminal (Oct2012-8324309eddfb) support for command-line editing compiled-in character encoding: UTF-8
Seems to be working fine for me?
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

On 29-11-2012 04:16:22 +0100, Masood Mortazavi wrote:
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version
mclient, the MonetDB interactive terminal (unreleased)
character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
You give the answer yourself. The configure script does not know you happened to install (GNU) readline under /opt/local/{include,lib}. Tell it where your readline is, so it can consider using it. Fabian -- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home _______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

Hi, in my case I always pass the following parameters to the configure script, both for the case of readline and iconv: --with-readline=/usr/local/Cellar/readline/6.1 --with-libiconv-prefix=/usr/local/Cellar/libiconv/1.13.1 The contents of /usr/local/Cellar/readline/6.1 are the following: $ ls /usr/local/Cellar/readline/6.1 COPYING ChangeLog README include/ lib/ share/ And I do not use the system's readline, but the one provided by Homebrew (http://mxcl.github.com/homebrew/). In your case, I suppose that you have to specify something like this: /Developer/SDKs/MacOSX10.X.sdk/usr (X depending on your OS X version). Hope that helps, Babis P.S.: A little out of context, but it might come in handy during the build process. I also pass the following parameter/value during configure, because at some point an update in Xcode messed things up by not removing/updating some old function prototypes (I think in the SSL library, but I might be mistaken here). CFLAGS=-Wno-deprecated-declarations On Thu, Nov 29, 2012 at 9:38 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 29-11-2012 04:16:22 +0100, Masood Mortazavi wrote:
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version
mclient, the MonetDB interactive terminal (unreleased)
character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
You give the answer yourself. The configure script does not know you happened to install (GNU) readline under /opt/local/{include,lib}. Tell it where your readline is, so it can consider using it.
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list

First, thank you for all your help. (Thanks Fabian, Babis and Stefan.) I finally had a chance to figure this out -- with the Macports distribution of readline, and now have a Mac package with proper readline integration. What worked with this distribution was to run configure with these options: --with-readline=/opt/local CFLAGS=-DLIBICONV_PLUG /opt/local is where I have my macports libraries, including readline. However, in macports' distribution of iconv, if LIBICONV_PLUG, is not defined, some function names are redefined. I guess macports authors did this in order to avoid some potential collisions with the "readline" library that comes with Mac OS-X (or xcode). The "-DLIBICONV_PLUG" compiler option disables the redefinition of function names in macports' iconv. Regards, Masood On Thu, Nov 29, 2012 at 3:16 AM, Charalampos Nikolaou <charnik@di.uoa.gr>wrote:
Hi, in my case I always pass the following parameters to the configure script, both for the case of readline and iconv:
--with-readline=/usr/local/Cellar/readline/6.1 --with-libiconv-prefix=/usr/local/Cellar/libiconv/1.13.1
The contents of /usr/local/Cellar/readline/6.1 are the following:
$ ls /usr/local/Cellar/readline/6.1 COPYING ChangeLog README include/ lib/ share/
And I do not use the system's readline, but the one provided by Homebrew (http://mxcl.github.com/homebrew/).
In your case, I suppose that you have to specify something like this:
/Developer/SDKs/MacOSX10.X.sdk/usr (X depending on your OS X version).
Hope that helps, Babis
P.S.: A little out of context, but it might come in handy during the build process. I also pass the following parameter/value during configure, because at some point an update in Xcode messed things up by not removing/updating some old function prototypes (I think in the SSL library, but I might be mistaken here).
CFLAGS=-Wno-deprecated-declarations
On Thu, Nov 29, 2012 at 9:38 AM, Fabian Groffen <fabian@monetdb.org> wrote:
On 29-11-2012 04:16:22 +0100, Masood Mortazavi wrote:
On my system, with default (no argument or options) configure, make and make install, I have:
masood$ mclient --version
mclient, the MonetDB interactive terminal (unreleased)
character encoding: UTF-8
despite the fact that readline (headers and libraries) seem to be installed under /opt/local.
You give the answer yourself. The configure script does not know you happened to install (GNU) readline under /opt/local/{include,lib}. Tell it where your readline is, so it can consider using it.
Fabian
-- Fabian Groffen fabian@monetdb.org column-store pioneer http://www.monetdb.org/Home
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
_______________________________________________ developers-list mailing list developers-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/developers-list
participants (4)
-
Charalampos Nikolaou
-
Fabian Groffen
-
Masood Mortazavi
-
Stefan Manegold