Abort trap 6

1,725 views
Skip to first unread message

chris blair

unread,
Feb 19, 2014, 4:53:14 PM2/19/14
to stacks...@googlegroups.com
Hi all, 

I just wanted to pose a question to see if any users have had a similar issue. I am trying to run a sam file through pstacks and am getting an "Abort trap 6" error. After doing a bit of googling I came to realize that many users of OSX Mountain Lion get a similar error when running applications. I wanted to ask if there are any other OSX 10.8 users who have had a difficult time running pstacks. Thanks!

Chris

Julian Catchen

unread,
Feb 19, 2014, 9:24:14 PM2/19/14
to stacks...@googlegroups.com, blai...@gmail.com
Hi Chris,

In Stacks 1.11 I fixed some bugs so that Stacks would build properly on
the native OS X compiler, clang. When you build Stacks on OS X, it
appears to be running g++ as the compiler, but it is really an alias for
clang. However, clang has not yet implemented OpenMP, so you still need
to disable that (--disable-openmp to the configure script). If you want
OpenMP you have to go through the process of installing a full version
of gcc using homebrew or macports (instructions on how to do this have
been posted previously on the list).

Anyway, you should make sure you have the newest install before we look
at any other "Abort" errors.

Best,

julian

Christopher Blair

unread,
Feb 20, 2014, 11:26:02 AM2/20/14
to Julian Catchen, stacks...@googlegroups.com
Hi Julian, 

Thanks for the email. I downloaded 1.12, but am getting the following errors while building the program:

g++ -DHAVE_CONFIG_H -I.    -fopenmp  -g -O2 -MT src/ustacks-ustacks.o -MD -MP -MF src/.deps/ustacks-ustacks.Tpo -c -o src/ustacks-ustacks.o `test -f 'src/ustacks.cc' || echo './'`src/ustacks.cc
In file included from src/ustacks.cc:29:
src/ustacks.h:55:25: error: unordered_map: No such file or directory
In file included from src/ustacks.cc:29:
src/ustacks.h:56: error: ‘std::unordered_map’ has not been declared
In file included from src/ustacks.h:68,
                 from src/ustacks.cc:29:
src/kmers.h:44: error: ‘std::unordered_map’ has not been declared
In file included from src/ustacks.h:68,
                 from src/ustacks.cc:29:
src/kmers.h:79: error: expected initializer before ‘<’ token
src/kmers.h:80: error: expected initializer before ‘<’ token
src/kmers.h:86: error: ‘KmerHashMap’ has not been declared
src/kmers.h:87: error: ‘CatKmerHashMap’ has not been declared
src/kmers.h:88: error: ‘KmerHashMap’ was not declared in this scope
src/kmers.h:88: error: expected primary-expression before ‘,’ token
src/kmers.h:88: error: expected primary-expression before ‘&’ token
src/kmers.h:88: error: expected primary-expression before ‘)’ token
src/kmers.h:88: error: initializer expression list treated as compound expression
src/kmers.h:89: error: redefinition of ‘int free_kmer_hash’
src/kmers.h:88: error: ‘int free_kmer_hash’ previously defined here
src/kmers.h:89: error: ‘CatKmerHashMap’ was not declared in this scope
src/kmers.h:89: error: expected primary-expression before ‘,’ token
src/kmers.h:89: error: expected primary-expression before ‘&’ token
src/kmers.h:89: error: expected primary-expression before ‘)’ token
src/kmers.h:109: error: ‘KmerHashMap’ was not declared in this scope
src/kmers.h:109: error: expected primary-expression before ‘)’ token
In file included from src/ustacks.cc:29:
src/ustacks.h:100: error: expected initializer before ‘<’ token
src/ustacks.h:106: error: ‘DNASeqHashMap’ has not been declared
src/ustacks.h:108: error: ‘DNASeqHashMap’ was not declared in this scope
src/ustacks.h:108: error: expected primary-expression before ‘,’ token
src/ustacks.h:108: error: expected primary-expression before ‘&’ token
src/ustacks.h:108: error: expected primary-expression before ‘,’ token
src/ustacks.h:108: error: expected primary-expression before ‘&’ token
src/ustacks.h:108: error: expected primary-expression before ‘)’ token
src/ustacks.h:108: error: initializer expression list treated as compound expression
src/ustacks.h:109: error: ‘DNASeqHashMap’ was not declared in this scope
src/ustacks.h:109: error: expected primary-expression before ‘,’ token
src/ustacks.h:109: error: expected primary-expression before ‘&’ token
src/ustacks.h:109: error: expected primary-expression before ‘)’ token
src/ustacks.h:109: error: initializer expression list treated as compound expression
src/ustacks.cc: In function ‘int main(int, char**)’:
src/ustacks.cc:124: error: ‘DNASeqHashMap’ was not declared in this scope
src/ustacks.cc:124: error: expected `;' before ‘radtags’
src/ustacks.cc:130: error: ‘radtags’ was not declared in this scope
src/ustacks.cc:132: error: ‘reduce_radtags’ cannot be used as a function
src/ustacks.cc:134: error: ‘free_radtags_hash’ cannot be used as a function
src/ustacks.cc: In function ‘int merge_remainders(std::map<int, MergedStack*, std::less<int>, std::allocator<std::pair<const int, MergedStack*> > >&, std::map<int, Rem*, std::less<int>, std::allocator<std::pair<const int, Rem*> > >&)’:
src/ustacks.cc:219: error: ‘KmerHashMap’ was not declared in this scope
src/ustacks.cc:219: error: expected `;' before ‘kmer_map’
src/ustacks.cc:221: error: ‘kmer_map’ was not declared in this scope
src/ustacks.cc:316: error: ‘free_kmer_hash’ cannot be used as a function
src/ustacks.cc: In function ‘int merge_stacks(std::map<int, Stack*, std::less<int>, std::allocator<std::pair<const int, Stack*> > >&, std::map<int, Rem*, std::less<int>, std::allocator<std::pair<const int, Rem*> > >&, std::map<int, MergedStack*, std::less<int>, std::allocator<std::pair<const int, MergedStack*> > >&, std::set<int, std::less<int>, std::allocator<int> >&, int)’:
src/ustacks.cc:590: warning: iteration variable ‘index’ is unsigned
src/ustacks.cc: In function ‘int calc_kmer_distance(std::map<int, MergedStack*, std::less<int>, std::allocator<std::pair<const int, MergedStack*> > >&, int)’:
src/ustacks.cc:1028: error: ‘KmerHashMap’ was not declared in this scope
src/ustacks.cc:1028: error: expected `;' before ‘kmer_map’
src/ustacks.cc:1055: error: ‘kmer_map’ was not declared in this scope
src/ustacks.cc:1060: warning: iteration variable ‘i’ is unsigned
src/ustacks.cc:1124: error: ‘free_kmer_hash’ cannot be used as a function
src/ustacks.cc: At global scope:
src/ustacks.cc:1188: error: redefinition of ‘int reduce_radtags’
src/ustacks.h:108: error: ‘int reduce_radtags’ previously defined here
src/ustacks.cc:1188: error: ‘DNASeqHashMap’ was not declared in this scope
src/ustacks.cc:1188: error: ‘radtags’ was not declared in this scope
src/ustacks.cc:1188: error: expected primary-expression before ‘&’ token
src/ustacks.cc:1188: error: ‘unique’ was not declared in this scope
src/ustacks.cc:1188: error: expected primary-expression before ‘&’ token
src/ustacks.cc:1188: error: ‘rem’ was not declared in this scope
make[1]: *** [src/ustacks-ustacks.o] Error 1
make: *** [all] Error 2


Not sure what is causing these errors.

Chris
--
Christopher Blair, Ph.D.
Postdoctoral Associate
Department of Biology
Duke University, Box 90338
BioSci 130 Science Drive
Durham, NC 27708
ph: 919-613-8727
Christopher.Blair@duke.edu

Julian Catchen

unread,
Feb 20, 2014, 1:50:09 PM2/20/14
to stacks...@googlegroups.com, blair.chr@gmail.com >> Christopher Blair
Hi Chris,

What type of system are you building Stacks on, and what version of g++ is
installed?

Executing

g++ --version

will tell you.

The unordered_map data structure is provided differently by different versions
of the C++ standard template library, the configure script should detect what
version you have and put in the right flag, but I don't see this flag in your
output. If your g++ is quite old, it won't have unordered_map. So, what was the
output of your configure script?

julian
> Christop...@duke.edu <mailto:peter....@duke.edu>
> <http://individual.utoronto.ca/chrisblair/index.html>
> Website: https://sites.google.com/site/christopherblairphd/home
>
> --
> Stacks website: http://creskolab.uoregon.edu/stacks/
> ---
> You received this message because you are subscribed to the Google Groups
> "Stacks" group.
> To unsubscribe from this group and stop receiving emails from it, send an email
> to stacks-users...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.

--
Julian M Catchen, Ph.D.
Institute of Ecology and Evolution
University of Oregon
--
jcat...@uoregon.edu
http://www.uoregon.edu/~jcatchen/

Christopher Blair

unread,
Feb 20, 2014, 2:18:04 PM2/20/14
to Julian Catchen, stacks...@googlegroups.com
HI Julian, 

I am building Stacks on OSX 10.8.4.

Typing g++ --version yields:

i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

After running configure I get the following output:

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... config/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking dependency style of g++... (cached) gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking dependency style of gcc... (cached) gcc3
checking whether gcc and cc understand -c and -o together... yes
checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=gnu++11... no
checking whether g++ supports C++11 features with -std=gnu++0x... no
checking whether g++ supports C++11 features with -std=c++11... no
checking whether g++ supports C++11 features with -std=c++0x... no
configure: No compiler with C++11 support was found
checking for omp_set_num_threads in -lgomp... no
configure: WARNING: Unable to locate OpenMP library, you should probably specify '--disable-openmp'.
checking for gzread in -lz... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking float.h usability... yes
checking float.h presence... yes
checking for float.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for stdbool.h that conforms to C99... no
checking for _Bool... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking whether closedir returns void... no
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking for floor... yes
checking for memset... yes
checking for pow... yes
checking for sqrt... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands

-Chris




For more options, visit https://groups.google.com/groups/opt_out.

--
Julian M Catchen, Ph.D.
Institute of Ecology and Evolution
University of Oregon
--
jcat...@uoregon.edu
http://www.uoregon.edu/~jcatchen/




--
Christopher Blair, Ph.D.
Postdoctoral Associate
Department of Biology
Duke University, Box 90338
BioSci 130 Science Drive
Durham, NC 27708
ph: 919-613-8727

Christopher Blair

unread,
Feb 20, 2014, 2:35:28 PM2/20/14
to Julian Catchen, stacks...@googlegroups.com
I just noticed this error in configure:

configure: WARNING: Unable to locate OpenMP library, you should probably specify '--disable-openmp'

However, I did specify this (i.e. ./configure --disable-openmp).

Julian Catchen

unread,
Feb 21, 2014, 2:56:49 PM2/21/14
to Christopher Blair, stacks...@googlegroups.com
Hi Chris,

When I run g++ --version on OS X Mavericks (10.9.1) I get:

Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr
--with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.0.0
Thread model: posix

And I get the following in my configure output:

checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=gnu++11... yes

And it builds fine.

Finally, you'll still get the warning about openmp even when you give
the disable flag to configure, but it will build fine.

So, it's free to upgrade to OS X Mavericks or you can install a native
version of g++ as others have documented on the list and it will build
with OpenMP support as well.

Best,

julian

Christopher Blair wrote:
> I just noticed this error in configure:
>
> configure: WARNING: Unable to locate OpenMP library, you should probably
> specify '--disable-openmp'
>
> However, I did specify this (i.e. ./configure --disable-openmp).
>
>
> On Thu, Feb 20, 2014 at 2:18 PM, Christopher Blair <blai...@gmail.com
> <mailto:blai...@gmail.com>> wrote:
>
> HI Julian,
>
> I am building Stacks on OSX 10.8.4.
>
> Typing g++ --version yields:
>
> i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc.
> build 5658) (LLVM build 2336.11.00)
> Copyright (C) 2007 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There
> is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
> PURPOSE.
>
> After running configure I get the following output:
>

Christopher Blair

unread,
Feb 21, 2014, 3:53:09 PM2/21/14
to Julian Catchen, stacks...@googlegroups.com
HI Julian, 

I would rather not install Mavericks if possible because of the many issues I have heard about. From reading the threads I was under the impression that g++ was required only if you want to run Stacks in parallel? 

If this is not the case, should I follow directions in this thread to delete my old compiler and install a new one (i.e. step 3)?


Chris


Christopher Blair

unread,
Feb 21, 2014, 4:22:25 PM2/21/14
to Julian Catchen, stacks...@googlegroups.com
Julian, 

I installed gcc-4.8 on my system, which let me install Stacks 1.12 with no issues. I then tried to run pstacks with a sam file and no longer receive the Abort trap error. Thanks!

Chris
Reply all
Reply to author
Forward
0 new messages