# Linux 64 bit executable bug

**URL:** https://forum.mothur.org/t/linux-64-bit-executable-bug/641
**Category:** mothur bugs
**Created:** [August 24, 2011, 9:27pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641 "2011-08-24T21:27:14Z")
**Posts on this page:** 18
**Page:** 1

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 24, 2011, 9:27pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/1 "2011-08-24T21:27:14Z")

</div>

I built the 64 bit 1.21 mothur version from source but it didn’t run properly. I then just installed the 64 bit linux executable on my CentOS 5.5 machine. It starts and runs summary.seqs fine. However when I run a trim.seqs command using an oligos file it picks the last barcode in the file and the term just keeps returning multiple lines of

barcode AAAATAAC is in your oligos file already. and I have to kill the process to get it to quit.

The exact same files work on my mac and a fn.trim.fasta file is produced, as well as a groups file. I checked the oligos file for the proper tabs and unix line feeds and everything looks OK.

Anyone else have this problem with the 64 bit binary?

Bob

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 25, 2011, 6:33pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/2 "2011-08-25T18:33:59Z")

</div>

I tried installing gcc 4.4.6 instead of gcc 4.6.0, to see if that made a difference in getting mothur to work on my Centos machine. I also recompiled openmpi with gcc446 and loaded it up using a modulefile.

I then compiled mothur 1.21.1 using 64 bit and mpi=yes. The program compiles, but when I run the trim.seqs command I get the same error as above. Perhaps it’s something else on my machine interfering with parsing of files? I’ve got ncurses, ncurses-devel, readline and readline-devel installed.

Also when I take the trim.seqs result files (fn.trim.fasta and fn.groups) from my Mac and transfer it to the Linux box and run split.groups I get the repeating error

Error in reading your fastafile, at position -1. Blank name.

Does this provide any clues?

-drats, at this point it looks completely broken- summary.seqs is also not working

Thanks, Bob

Note: I’m trying to install the program on my Linux box because it has more memory and other users in the lab want to run the program from a remote term.

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 25, 2011, 10:14pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/3 "2011-08-25T22:14:42Z")

</div>

I’ve now tried compiling with and without MPI enabled and with and without readline. With MPI disabled summary.seqs works, but trim.seqs still fails. Having readline yes or no makes no difference.

I’ve tried back to version 1.20.1

Is there some sort of debug trace that I can run?

I assume other people have got this to work?

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 26, 2011, 4:42pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/4 "2011-08-26T16:42:26Z")

</div>

We tried running mothur on a couple of different linux boxes, one running Debian Lenny (Debian 5) and one running Debian Squeeze (Debian 6).

mothur comes back with the same trim.seqs error on the Debian Lenny box when mothur 1.16 or mothur 1.21.1 is run. However the 1.20.1 and 1.21.1 binary works on Debian squeeze.

Does anyone have a clue as to what updated underlying libraries might be needed to get mothur to run?

If mothur runs on a Centos 5.5 box, was anything updated in order to get the binary to run trim.seqs etc.?

Bob

---

<div class="post-metadata">

### Author: ![westcott](https://yyz2.discourse-cdn.com/flex036/user_avatar/forum.mothur.org/westcott/32/18_2.png) [@westcott](https://forum.mothur.org/u/westcott)
#### Post date: [August 26, 2011, 7:31pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/5 "2011-08-26T19:31:14Z")

</div>

The Centos version of mothur’s executable is built on Centos 5.5 using g++ 4.1.2, for the 32 bit version and g++44 4.4.0 for the 64 bit version. The only special library used is readline, but that doesn’t seem to be the issue for you. I did a fresh build on my Debian 6 box using g++ 4.3.2, which is bare bones with only the OS and g++ installed on it, and was able to run trim.seqs and summary.seqs on the Costello files without errors. I am not sure what you mean by “not working”. Have you tried running make clean and then make? If you want to send your input files and logfile to [mothur.bugs@gmail.com](mailto:mothur.bugs@gmail.com), I can try to troubleshoot it for you?

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 26, 2011, 10:31pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/6 "2011-08-26T22:31:53Z")

</div>

Yes I tried make clean and also compiling from a new source directory. Do you think a change from g++4.4.0 to g++4.4.6 would cause the problem? I’m wondering whether the version of libc or glibc makes a difference. My Centos machine uses gnu libc 2.5

By not working I mean that the program keeps returning

barcode AAAATAAC is in your oligos file already.  
barcode AAAATAAC is in your oligos file already.  
barcode AAAATAAC is in your oligos file already.  
barcode AAAATAAC is in your oligos file already.

over and over again in the term window (the output doesn’t stop, I have to kill the process). With split.groups it returns

Error in reading your fastafile, at position -1. Blank name.  
Error in reading your fastafile, at position -1. Blank name.  
Error in reading your fastafile, at position -1. Blank name.

over and over. The input files work on the Mac installation as well as on Debian 6.

I’ll send the files. In the meantime I’ll try downgrading the version of gcc used to compile mothur. But then again, why would the binary distribution not work?

Bob

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [August 29, 2011, 9:53pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/7 "2011-08-29T21:53:42Z")

</div>

I found that there was a link to newer libstdc libraries installed by gcc 4.6.0 that was not overwritten by the gcc-4.4.6 modulefiles that I activated on my system.

Clearing this up and then just activating the gcc-4.4.6 libraries allowed me to compile and run mothur 1.21.1 successfully on my system, and the trim.seqs command works.

Bob

---

<div class="post-metadata">

### Author: ![bimar](https://avatars.discourse-cdn.com/v4/letter/b/cc9497/32.png) [@bimar](https://forum.mothur.org/u/bimar)
#### Post date: [October 20, 2011, 9:06am UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/8 "2011-10-20T09:06:23Z")

</div>

Dear Bob!

I observed the same phenomenon. I have Mothur 1.21 (and 1.17) installed on a Debian 6 system. Both versions are working without the described problem. However, the default gcc version (and all related libraries/programs like g++, libstdc,…) is 4.4. This is because the latest Debian release is always about one year behind the latest Ubuntu release. And as you observed correctly, with gcc 4.4 everything is fine.

But when I want to use a recent Ubuntu version, the default gcc is 4.6 and Mothur will not work.

But it seems as if you solved the problem by going back to a gcc-4.4 and adpting all related libraries (under CentOS). Can you describe in more detail how you did this? I think this will be a valuable source for other users who are working with recent versions of Linux and will have similar problems with Mothur.

By the way: Can we expect that Mothur will deal with this problem in one of the next releases?

Markus

---

<div class="post-metadata">

### Author: ![forster](https://avatars.discourse-cdn.com/v4/letter/f/bbe5ce/32.png) [@forster](https://forum.mothur.org/u/forster)
#### Post date: [October 20, 2011, 3:24pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/9 "2011-10-20T15:24:15Z")

</div>

Markus:  
Yes gcc-4.6.0 will not work.

I got around this by installing the modules program ([http://modules.sourceforge.net](http://modules.sourceforge.net)). I then installed gcc-4.4.6 in a separate directory (in my case /opt/gcc466). Installing gcc can be tricky, make sure you have the dependencies listed in the gnu gcc installation instructions, and build it in a different directory than the gcc source code directory.

Once it’s installed you create a modulefile that points to the gcc binary, and most importantly the libraries.

You then load this module with something like $ module load gcc/gcc-4.4.6 (I also created modulefiles for the native version of gcc on my machine (4.1.2) and for gcc-4.6.0)

The modulefile prepends the PATH, and the libraries are found. Then you start mothur.

Send me an e-mail at robert.forster at agr dot gc dot ca and I’ll send you my modulefile–you should be able to work it out from there.

Bob

---

<div class="post-metadata">

### Author: ![roey.angel](https://avatars.discourse-cdn.com/v4/letter/r/e36b37/32.png) [@roey.angel](https://forum.mothur.org/u/roey.angel)
#### Post date: [October 22, 2011, 11:30pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/10 "2011-10-22T23:30:19Z")

</div>

Hi Bob,  
Trying to solve the same problem.  
I tried installing modules but that didn’t work out and seems somewhat complicated.  
Instead I tried changing the symbolic link of gcc in my /usr/bin folder to gcc-4.4 and recompiled mothur from source code, but that did work.

Any simpler solution to the problem?

I would run the win version, except that running trim.flows crashes mothur on my win7.

Thanks again,  
Roey

---

<div class="post-metadata">

### Author: ![fmiranda2011](https://avatars.discourse-cdn.com/v4/letter/f/ba8739/32.png) [@fmiranda2011](https://forum.mothur.org/u/fmiranda2011)
#### Post date: [October 23, 2011, 9:24pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/11 "2011-10-23T21:24:58Z")

</div>

Hi everybody!

I have a similar problem, I have been used mothur on my ubuntu, but recently I updated to 11.10 distribution and my mothur didn’t work. when I tried to use unique.seqs(fasta=file) appears: “Error in reading your fastafile, at position -1. Blank name”. I checked my fasta file and it doesn’t have any problem.

I remove the mothur folder and I tried to reinstall it , and I am having the same problem any time I tried something new. I think is something about the C compiler in the new ubuntu, but I canÂ´t figure how to solve it since I am a Linux newbie.

This is my makefile  
################################################################################################################################################  
USEMPI ?= no  
64BIT\_VERSION ?= yes  
USEREADLINE ?= yes  
CYGWIN\_BUILD ?= no  
USECOMPRESSION ?= no  
MOTHUR\_FILES="“Enter\_your\_default\_path\_here”"  
RELEASE\_DATE = "“10/18/2011"”  
VERSION = "“1.22.0"”

# Optimize to level 3:

CXXFLAGS += -O3

ifeq ($(strip $(64BIT\_VERSION)),yes)  
#if you are using centos uncomment the following lines  
#CXX = g++44

#if you are a mac user use the following line  
#TARGET\_ARCH += -arch x86\_64

#if you using cygwin to build Windows the following line  
#CXX = x86\_64-w64-mingw32-g++  
#CC = x86\_64-w64-mingw32-g++  
#TARGET\_ARCH += -m64

#if you are a linux user use the following line  
CXXFLAGS += -mtune=native -march=native -m64

CXXFLAGS += -DBIT\_VERSION  
endif

  
CXXFLAGS += -DRELEASE\_DATE=${RELEASE\_DATE} -DVERSION=${VERSION}

ifeq ($(strip $(MOTHUR\_FILES)),"“Enter\_your\_default\_path\_here”")  
else  
CXXFLAGS += -DMOTHUR\_FILES=${MOTHUR\_FILES}  
endif

ifeq ($(strip $(CYGWIN\_BUILD)),yes)  
CXXFLAGS += -mno-cygwin  
LDFLAGS += -mno-cygwin  
endif

# if you do not want to use the readline library, set this to no.

# make sure you have the library installed
  
ifeq ($(strip $(USEREADLINE)),yes) CXXFLAGS += -DUSE\_READLINE LIBS = \ -lreadline\ -lncurses endif  
ifeq ($(strip $(USEMPI)),yes) CXX = mpic++ CXXFLAGS += -DUSE\_MPI endif
# if you want to enable reading and writing of compressed files, set to yes.

# The default is no. this may only work on unix-like systems, not for windows.
  
ifeq ($(strip $(USECOMPRESSION)),yes) CXXFLAGS += -DUSE\_COMPRESSION endif
# 

# INCLUDE directories for mothur

# 

CXXFLAGS += -I.

# 

# Get the list of all .cpp files, rename to .o files

# 

OBJECTS=$(patsubst %.cpp,%.o,$(wildcard \*.cpp))  
OBJECTS+=$(patsubst %.c,%.o,$(wildcard \*.c))

mothur : $(OBJECTS) uchime  
$(CXX) $(LDFLAGS) $(TARGET\_ARCH) -o $@ $(OBJECTS) $(LIBS)

strip mothur

uchime:  
cd uchime\_src && ./mk && mv uchime … && cd …

install : mothur

%.o : %.c %.h  
$(COMPILE.c) $(OUTPUT\_OPTION) $\<  
%.o : %.cpp %.h  
$(COMPILE.cpp) $(OUTPUT\_OPTION) $\<  
%.o : %.cpp %.hpp  
$(COMPILE.cpp) $(OUTPUT\_OPTION) $\<

  
clean : @rm -f $(OBJECTS) @rm -f uchime ################################################################################################################################################ I have this programs installed on my computer

g++ version 4:4.6.1-2ubuntu5  
g+±4.6  
g+±4.6 multilib  
g+± multilib  
gcc-4.6-doc  
gcc-doc  
libstdc++6  
libstdc++6-4.6-dev  
cpp version 4:4.6.1-2ubuntu5  
cpp-4.6  
######################################################  
I hope you could help me, I will be very happy in use again my dear mothur program.

Fabiola

---

<div class="post-metadata">

### Author: ![Fabian](https://avatars.discourse-cdn.com/v4/letter/f/f6c823/32.png) [@Fabian](https://forum.mothur.org/u/Fabian)
#### Post date: [October 24, 2011, 4:21am UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/12 "2011-10-24T04:21:34Z")

</div>

Same problem here with mothur v1.22 since I updated to Ubuntu 11.10. Everything worked fine with 11.04 after compiling from source code. I still had mothur v1.21.1 which I compiled under Ubuntu 11.04 installed. Tried it with the same error. Is installing another gcc version the solution?

Fabian

---

<div class="post-metadata">

### Author: ![Fabian](https://avatars.discourse-cdn.com/v4/letter/f/f6c823/32.png) [@Fabian](https://forum.mothur.org/u/Fabian)
#### Post date: [October 24, 2011, 5:35pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/13 "2011-10-24T17:35:51Z")

</div>

Tried compiling optimization options -O2 and -O1 (Ubuntu 11.10, mothur 1.22.0). No success. Same error as described by Fabiola

---

<div class="post-metadata">

### Author: ![westcott](https://yyz2.discourse-cdn.com/flex036/user_avatar/forum.mothur.org/westcott/32/18_2.png) [@westcott](https://forum.mothur.org/u/westcott)
#### Post date: [October 24, 2011, 7:05pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/14 "2011-10-24T19:05:24Z")

</div>

I installed g++ 4.6.0 and was able to reproduce and resolve the issue in mothur’s source code. I have uploaded version 1.22.1 to the wiki. Want to give it a try and see how it works for you?

---

<div class="post-metadata">

### Author: ![Fabian](https://avatars.discourse-cdn.com/v4/letter/f/f6c823/32.png) [@Fabian](https://forum.mothur.org/u/Fabian)
#### Post date: [October 25, 2011, 1:50am UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/15 "2011-10-25T01:50:25Z")

</div>

That was quick, will try tonight thank you!

---

<div class="post-metadata">

### Author: ![Fabian](https://avatars.discourse-cdn.com/v4/letter/f/f6c823/32.png) [@Fabian](https://forum.mothur.org/u/Fabian)
#### Post date: [October 25, 2011, 5:21am UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/16 "2011-10-25T05:21:14Z")

</div>

Works, Thank you!

Got a couple of errormessages while compiling though  
e.g.:  
trimflowscommand.h:130:2: warning: â€˜typedefâ€™ was ignored in this declaration [enabled by default]

Hope it does not matter.

Thanks again

---

<div class="post-metadata">

### Author: ![westcott](https://yyz2.discourse-cdn.com/flex036/user_avatar/forum.mothur.org/westcott/32/18_2.png) [@westcott](https://forum.mothur.org/u/westcott)
#### Post date: [October 25, 2011, 10:07am UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/17 "2011-10-25T10:07:01Z")

</div>

Glad it’s working for you, 🙂

---

<div class="post-metadata">

### Author: ![fmiranda2011](https://avatars.discourse-cdn.com/v4/letter/f/ba8739/32.png) [@fmiranda2011](https://forum.mothur.org/u/fmiranda2011)
#### Post date: [October 30, 2011, 6:52pm UTC](https://forum.mothur.org/t/linux-64-bit-executable-bug/641/18 "2011-10-30T18:52:47Z")

</div>

Thanks westcott! I have solved the problem and mothur works perfectly.
