mothur

mothur 1.8 release

If you can hold on, Sarah’s finishing our testing of the next release of mothur. We (that’s the royal we) have been busy over the past few months adding a lot of features and ironing out bugs. You can get a sneak preview of what’s in store at http://www.mothur.org/wiki/Mothur_v.1.8.0. Also, if you want to see what’s on our docket of things to add to mothur (or to make a suggestion) you can check out http://www.mothur.org/wiki/Features_docket

The new release is up… Enjoy!

http://www.mothur.org/wiki/Mothur_v.1.8.0

Hi,

I tried to make the mothur 1.8 but I got this error. Is that me my libreadline.so is out of date or other problems ?
The operation system is x86_64 GNU/Linux redhat.

/usr/lib/gcc/x86_64-redhat-linux/4.1.2/…/…/…/…/lib64/libreadline.so: undefined reference to PC' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so: undefined reference totgetflag’
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/…/…/…/…/lib64/libreadline.so: undefined reference to tgetent' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so: undefined reference toUP’
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/…/…/…/…/lib64/libreadline.so: undefined reference to tputs' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so: undefined reference totgoto’
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/…/…/…/…/lib64/libreadline.so: undefined reference to tgetnum' /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../lib64/libreadline.so: undefined reference toBC’
/usr/lib/gcc/x86_64-redhat-linux/4.1.2/…/…/…/…/lib64/libreadline.so: undefined reference to `tgetstr’
collect2: ld returned 1 exit status
make: *** [mothur] Error 1

I mark the USEREADLINE ?= no in make file and got the other error.

./engine.o: In function Engine::getCommand()': engine.cpp:(.text+0x255a): undefined reference toreadline’
engine.cpp:(.text+0x256c): undefined reference to `add_history’
collect2: ld returned 1 exit status

Thanks,
Chien-Chi

Also, I suggest changing the installation page to describe how to get 64 bit pointers, given that makefile has been re-structured to handle readline.

I got it to compile with the following in the makefile:

CC = g++
CC_OPTIONS = -O3 -arch x86_64

if you do not want to use the readline library set to no, default yes.

make sure you have the library installed

USEREADLINE ?= yes

ifeq ($(strip $(USEREADLINE)),yes)
CC_OPTIONS += -DUSE_READLINE
LNK_OPTIONS =
-lreadline
-L…/readline-6.0
-arch x86_64
endif

The link to the Windows 1.8 binary still appears to be pointing to the older 1.7.2.
At least, that’s what it reports when it starts up, and it doesn’t have any of the new commands.
[Yes, I cleared my browser cache.]

Robin

Edit: It turns out that my proxy server is caching files.
The only workaround has been to download mothur from home.
False alarm :oops:

add -lncurses after -lreadline i.e:

 LNK_OPTIONS = \
  -lreadline\
      -lncurses\
  -L../readline-6.0

Robin

Thanks Robin.

I was trying to get Mothur compiled on Centos today with no joy until I tried your suggestion.

@Mothurdevelopers, should this be added to the installation instructions? A quick google brings up a number of people having similar problems with other applications on Centos / Red Hat.

Feel free to update the wiki with instructions that you think make sense (it’s supposed to be a community thing!)