|
From: | Michael Käppler |
Subject: | Re: Getting readline to work in scheme-sandbox |
Date: | Thu, 16 Jan 2020 09:51:23 +0100 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.3.1 |
Am 15.01.2020 um 23:55 schrieb Knute Snortum:
Okay, I built guile 1.8.7 after installing GNU MP and flex, but I get the same error: guile> (use-modules (ice-9 readline)) ERROR: readline is not provided in this Guile installation ABORT: (misc-error) So I redid the strace and I attached the log file.
Which way of "installing" libguilereadline did you choose? Did you run "make install" or did you copy libguilereadline-v-17.so.17.0.3 to /home/knute/lilypond/lilypond-2.19.83/lilypond/usr/lib ? Could you please send me your config.log from guile-1.8/guile-readline and additionately do a objdump -x ~/guile-1.8/guile-readline/.libs/libguilereadline-v-17.so.17.0.3 > libguilereadline.dump and attach the resulting file, too? Thanks for your patience, Michael
--- Knute Snortum (via Gmail) On Wed, Jan 15, 2020 at 12:29 PM Michael Käppler <address@hidden> wrote:Do you have "gettext" installed? If not, please install and retry. Am 15.01.2020 um 18:38 schrieb Knute Snortum:I didn't get past autogen: autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 configure.ac:905: warning: macro 'AM_GNU_GETTEXT' not found in library autoreconf: configure.ac: tracing autoreconf: configure.ac: adding subdirectory guile-readline to autoreconf autoreconf: Entering directory `guile-readline' autoreconf: running: aclocal --force autoreconf: running: libtoolize --copy --force libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, '.'. libtoolize: copying file './ltmain.sh' libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. autoreconf: running: /usr/bin/autoconf --force autoreconf: running: /usr/bin/autoheader --force autoreconf: running: automake --add-missing --copy --force-missing configure.ac:18: installing './compile' configure.ac:19: installing './config.guess' configure.ac:19: installing './config.sub' configure.ac:13: installing './install-sh' configure.ac:13: installing './missing' Makefile.am:29: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS') Makefile.am: installing './depcomp' autoreconf: Leaving directory `guile-readline' libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'. libtoolize: copying file 'build-aux/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' configure.ac:905: warning: macro 'AM_GNU_GETTEXT' not found in library configure.ac:932: error: possibly undefined macro: AM_GNU_GETTEXT If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. autoreconf: /usr/bin/autoconf failed with exit status: 1 --- Knute Snortum (via Gmail) On Wed, Jan 15, 2020 at 12:24 AM Michael Käppler <address@hidden> wrote:Ok, seems that guile-2.2-libs does not provide libguilereadline... I think the remaining option is to build guile-1.8 from scratch. First make sure that you have libreadline-dev installed, then, in your home directory, do: git clone -b branch_release-1-8 --single-branch https://git.savannah.gnu.org/git/guile.git guile-1.8 cd guile-1.8 ./autogen.sh ./configure --disable-error-on-warning --prefix=/usr/local make make install ldconfig If you do not want to install your self-compiled guile-1.8 globally with "make install" it should be also sufficient to rename /home/knute/lilypond/lilypond-2.19.83/lilypond/usr/lib/libguilereadline-v-17.so.17.0.3 to libguilereadline-v-17.so.17.0.3.old and put the corresponding file from /home/knute/guile-1.8/guile-readline/.libs/ in there. Then try with scheme-sandbox.ly again. Please report if it succeeds now. Michael Am 15.01.2020 um 00:05 schrieb Knute Snortum:I'm not in a vanilla setup, so I changed the commands to: (just for posterity) $ export LD_LIBRARY_PATH="/home/knute/lilypond/lilypond-2.19.83/lilypond/usr/lib" $ strace -o readlinedebug.log /home/knute/lilypond/lilypond-2.19.83/lilypond/usr/bin/lilypond scheme-sandbox.ly The log file is attached. --- Knute Snortum (via Gmail) On Tue, Jan 14, 2020 at 8:47 AM Michael Käppler <address@hidden> wrote:This is weird. Seems that strace does not recognize the shebang in the lilypond script. Could you please to try to execute the steps in the startup script directly? I assume you used the vanilla lilypond installer and installed to your home directory /home/knute/: export LD_LIBRARY_PATH="/home/knute/lilypond/usr/lib" strace -o readlinedebug.log /home/knute/lilypond/usr/bin/lilypond scheme-sandbox.ly Am 14.01.2020 um 16:36 schrieb Knute Snortum:It looks like I get an error in strace. The sandbox is never executed: execve("/home/knute/bin/lilypond", ["lilypond", "scheme-sandbox.ly"], 0x7ffe4792c428 /* 53 vars */) = -1 ENOEXEC (Exec format error) strace: exec: Exec format error +++ exited with 1 +++ --- Knute Snortum (via Gmail) On Mon, Jan 13, 2020 at 10:59 PM Michael Käppler <address@hidden> wrote:Hi Knute, I'm currently working on this problem. A library called libguilereadline, that comes with guile, does provide the interface to the libreadline library. The version we ship with our packages, however, seems to be broken somehow. There are some ways to get around this. Do you have guile-2.2-libs installed, too? If installing guile-2.2-libs does not help either, please send me the output of strace -o readlinedebug.log lilypond scheme-sandbox.ly where you type the mentioned commands for activating readline. Regards, Michael Am 14.01.2020 um 01:31 schrieb Knute Snortum:I recently discovered the scheme-sandbox in LilyPond and I want to get line editing to work. In scheme-sandbox.ly the comments say: % One typical thing you might want to put there is % (use-modules (ice-9 readline)) % (activate-readline) % in order to activate command line editing for interactive sessions. I'm assuming that these are commands to type into the sandbox. But when I do this I get an error: guile> (use-modules (ice-9 readline)) ERROR: readline is not provided in this Guile installation ABORT: (misc-error) When I search for installed packages at the Linux command line, I see this: libreadline8/eoan,now 8.0-3 amd64 [installed,automatic] Any idea why readline is not available? My system is Ubuntu 19.10, Guile is 2.2 and LilyPond is 2.19.83. --- Knute Snortum (via Gmail)
[Prev in Thread] | Current Thread | [Next in Thread] |