This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Can not find readline library when installing R

Hi, all,

When I was configuring R (R-3.2.0 and R-3.1.1), I met the following problems.

checking readline/history.h usability... yes
checking readline/history.h presence... yes
checking for readline/history.h... yes
checking readline/readline.h usability... yes
checking readline/readline.h presence... yes
checking for readline/readline.h... yes
checking for rl_callback_read_char in -lreadline... no
checking for main in -lncurses... no
checking for main in -ltermcap... no
checking for main in -ltermlib... no
checking for rl_callback_read_char in -lreadline... no
checking for history_truncate_file... no
configure: error: --with-readline=yes (default) and headers/libs are not available

However, I have readline installed in ~/softwares/readline-6.3/install, and ~/softwares/readline-6.3/install/lib in LD_LIBRARY_PATH, and ~/softwares/readline-6.3/install/include in C_INCLUDE_PATH.

Files listed as below:

bin  include  lib  share

./bin:

./include:
readline

./include/readline:
chardefs.h  history.h  keymaps.h  readline.h  rlconf.h  rlstdc.h  rltypedefs.h  tilde.h

./lib:
libhistory.a  libhistory.so  libhistory.so.6  libhistory.so.6.3  libreadline.a  libreadline.so  libreadline.so.6  libreadline.so.6.3  readline.so

Here is another error, I wonder if there is anything wrong about libreadline.so.

$ ld readline-6.3/install/lib/libreadline.so
ld: warning: cannot find entry symbol _start; not setting start address
readline-6.3/install/lib/libreadline.so: undefined reference to `PC'
readline-6.3/install/lib/libreadline.so: undefined reference to `tgetflag'
readline-6.3/install/lib/libreadline.so: undefined reference to `tgetent'
readline-6.3/install/lib/libreadline.so: undefined reference to `UP'
readline-6.3/install/lib/libreadline.so: undefined reference to `tputs'
readline-6.3/install/lib/libreadline.so: undefined reference to `tgoto'
readline-6.3/install/lib/libreadline.so: undefined reference to `tgetnum'
readline-6.3/install/lib/libreadline.so: undefined reference to `BC'
readline-6.3/install/lib/libreadline.so: undefined reference to `tgetstr

My operation system is:

Linux version 2.6.32-358.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Fri Feb 22 00:31:26 UTC 2013

I wonder why configure of R can not find the libreadline.so?

Thanks for the help!

Chen Tong

readline r

that seems a bit strange...

which OS are you compiling it for? could you double check your environment variables? could you also post the complete "make" command line?

@Sebastian Kurscheid: Sorry that ADD REPLY link is not working for me. I have added operating system information and double checked environmental variables. Currently I can not get configure finished successfully. The command for configure is ./configure --prefix=/home/ct/softwares/R-3.2.0_install/ --enable-R-shlib.

Hello Ct586!

We believe that this post does not fit the main topic of this site.

This is not a bioinformatics question, try the R-help mailling list for example, or stackoverflow

For this reason we have closed your question. This allows us to keep the site focused on the topics that the community can help with.

If you disagree please tell us why in a reply below, we'll be happy to talk about it.

Cheers!

1 answer

I think you might need to install "readline-devel" - see also here: http://stackoverflow.com/questions/3087524/cannot-find-lreadline-error-when-compiling-lua

Log in to answer this question.