Error in readline installing new

I downloaded 1.24.1 as an executable for Linux and attempted to install in in Ubuntu. I get the message “./mothur: error while loading shared libraries: cannot open shared object file: No such file or directory” when trying to run. I get it in both 32 and 64 bit. The executable without readline works fine. I assume this is because I am running readline6, so the .5 file is replaced by a .6?

Trying to compile from source, I get the following:

georgia@georgia-U56E:~/mothur/Mothur.source$ make
gfortran -c -m64 *.f
g++ -O3 -mtune=native -march=native -m64 -DBIT_VERSION -DRELEASE_DATE="“3/16/2012"” -DVERSION="“1.24.1"” -DMOTHUR_FILES=""/home/georgia/mothur"" -DUSE_READLINE -I. -c -o ace.o ace.cpp
In file included from calculator.h:5:0,
from ace.h:16,
from ace.cpp:10:
mothur.h:66:33: fatal error: readline/readline.h: No such file or directory
compilation terminated.

Which I assume is related to the above error. I really love using readline in interactive mode, would like to see this fixed :slight_smile:

It seems mothur is not able to find where you have readline installed on your machine. Can you tell me what “apt-file search readline/readline.h” returns?

guile-1.6-dev: /usr/include/guile-readline/readline.h
libreadline-gplv2-dev: /usr/include/readline/readline.h
libreadline6-dev: /usr/include/readline/readline.h

I am experiencing the same problem with the install of the new mothur 1.26 whereas I never had this problem before.
I am running mothur on a 64 bit 24-core system with Ubuntu 12.04 LTS server installed.
The result of apt-file search readline/readline.h is:

guile-1.6-dev: /usr/include/guile-readline/readline.h
libreadline-gplv2-dev: /usr/include/readline/readline.h
libreadline6-dev: /usr/include/readline/readline.h

this is the same output as Georgia

How do I resolve this issue?

You can mark this issue as resolved: after digging somewhat deeper I found out that although there apparently are links to the readline.h it wasn’t there.
I found out that I didn’t have the libreadline-dev installed. I had it previously installed on ubuntu 11.10 (former OS of the server) and somehow it got removed when updating to 12.04 LTS without removing the links I guess (my best guess, wouldn’t know how I was ever able to compile mothur 1.24 from source if this was not the case).

So after executing apt-get install libreadline-dev the installation didn’t give the issue anymore.

Sorry for bothering you all.
I hope this post might help other people with the same question as me resolve this issue in the future.

Kind regards,

Frederiek - Maarten Kerckhof

I’m sorry

I guess I spoke too soon: the compilation from source code continues until -lncurses cannot be found:

(…) stxwx.o -lreadline -lncurses
/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make: *** [mothur] Error 1

I fail to find any information regarding -lncurses

all suggestions on solving this problem are very welcome

Do you have ncurses installed?


Thank you for your reply.
I’m not quite sure if I have ncurses installed.
As I am saying, when compiling mothur 1.24 from source I never experienced any issue however I switched the OS on my server from ubuntu server 11.10 to 12.04 LTS.
When I tried sudo apt-get install ncurses I get the following output:
Package ncurses is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package ‘ncurses’ has no installation candidate

If anyone knows how to install the correct package refering to ncurses, feel free to let me know (i have a 64-bit system).

Kind regards,

Frederiek - Maarten Kerckhof

Not sure about 12.04, but I found this link with a similar issue and resolution:


Thank you very much!
lib64ncurses5-dev solved the issue.
Mothur 1.26 is up and running and I immediately could make use of the new get.coremcrobiome for my upcoming paper (which will, of course, include proper referencing to Mothur).

Kind regards,

Frederiek - Maarten Kerckhof
Laboratory of microbial ecology and technology (LabMET), Ghent University, Belgium