gmarcais / Jellyfish

A fast multi-threaded k-mer counter
Other
463 stars 136 forks source link

Trouble installing jellyfish from source on Mac OS #24

Closed JohnUrban closed 9 years ago

JohnUrban commented 9 years ago

I downloaded source from: http://www.genome.umd.edu/jellyfish.html

After going into the directory, I tried: $ ./configure #seems to have worked $ make #this generates the error message below. make all-am CXX lib/rectangular_binary_matrix.lo In file included from lib/rectangular_binary_matrix.cc:22: ./include/jellyfish/rectangular_binary_matrix.hpp:264:5: warning: 'register' storage class specifier is deprecated [-Wdeprecated-register] register xmm_t acc = acc ^ acc; // Set acc to 0 ^~~~~ ./include/jellyfish/rectangular_binary_matrix.hpp:265:5: warning: 'register' storage class specifier is deprecated [-Wdeprecated-register] register xmm_t load = load ^ load; ^~~~~ 2 warnings generated. CXX lib/mer_dna.lo CXX lib/storage.lo CXX lib/allocators_mmap.lo CXX lib/misc.lo lib/misc.cc:86:11: error: no member named 'all_of' in namespace 'std' if(std::all_of(arg.begin(), arg.end(), isblunt))


1 error generated.
make[1]: **\* [lib/misc.lo] Error 1
make: **\* [all] Error 2

I have also tried installing via homebrew, but it also throws an error. I know its possible to install with MacPorts, but I was hoping I could install this program without downloading/installing/using another package manager (I already have HomeBrew, which I try to use sparingly). Any help would be appreciated.
gmarcais commented 9 years ago

Hi John,

what compiler and which version are you using? Also, can you checkout the develop branch and try to compile that.

Guillaume.

JohnUrban commented 9 years ago

Hi Guillaume, When I do "$ gcc --version", here is the output:

$ gcc --version Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) Target: x86_64-apple-darwin12.5.0 Thread model: posix $

I downloaded the develop branch zip and did: $ ./configure --prefix=pathToLocalDir and received the message: "./configure: No such file or directory" There is no "configure" file in the develop zip (though there is one in the master), but there is the configure.ac file.

Right now I am trying: $ brew tap homebrew/versions $ brew install gcc49 …to see if this helps with the master branch installation.

gmarcais commented 9 years ago

On Wed, Oct 22, 2014 at 9:47 AM, John Urban notifications@github.com wrote:

Hi Guillaume, When I do "$ gcc --version", here is the output:

$ gcc --version Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) Target: x86_64-apple-darwin12.5.0 Thread model: posix $

This version of the compiler is too old. It is not supported. You need 4.7 or newer.

I downloaded the develop branch zip and did: $ ./configure --prefix=pathToLocalDir and received the message: "./configure: No such file or directory" There is no "configure" file in the develop zip (though there is one in the master), but there is the configure.ac file.

The develop branch zip of Jellyfish? If you are working off of the github tree, you first need to run 'autoreconf -i'. That will create configure. It is easier usually to work with the tarball available from the Jellyfish website.

Right now I am trying: $ brew tap homebrew/versions $ brew install gcc49 …to see if this helps with the master branch installation.

Yes, gcc49 should work (although I have not tested it yet, I am still using 4.8). You then need to pass the right compiler to configure like this:

./configure CXX=/path/to/gcc++49

There is some information on the website: http://www.genome.umd.edu/jellyfish.html

Guillaume

— Reply to this email directly or view it on GitHub https://github.com/gmarcais/Jellyfish/issues/24#issuecomment-60086710.

JohnUrban commented 9 years ago

Here is what worked for me: $ brew tap homebrew/versions $ brew install gcc49 $ ./configure --prefix /Users/johnurban/searchPaths/software/jellyfish/2.1.4/ CXX=/usr/local/Cellar/gcc49/4.9.1/bin/g++-4.9 $ make $ make install

$ pathTo/jellyfish --help Usage: jellyfish [options] arg... Where is one of: count, bc, info, stats, histo, dump, merge, query, cite, mem, jf. Options: --version Display version --help Display this message

Thanks for your assistance and the great program. --John

gmarcais commented 9 years ago

Great.

On Wed, Oct 22, 2014 at 11:42 AM, John Urban notifications@github.com wrote:

Here is what worked for me: $ brew tap homebrew/versions $ brew install gcc49 $ ./configure --prefix /Users/johnurban/searchPaths/software/jellyfish/2.1.4/ CXX=/usr/local/Cellar/gcc49/4.9.1/bin/g++-4.9 $ make $ make install

$ pathTo/jellyfish --help Usage: jellyfish [options] arg... Where is one of: count, bc, info, stats, histo, dump, merge, query, cite, mem, jf. Options: --version Display version --help Display this message

Thanks for your assistance and the great program. --John

— Reply to this email directly or view it on GitHub https://github.com/gmarcais/Jellyfish/issues/24#issuecomment-60105827.