Unconfigured Ad

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Luis
    Junior Member
    • Oct 2015
    • 2

    #1

    Bowtie2 and TBB compilation

    Hi all,

    Because Bowtie2 with "-p xx" option don't make multithreading, I tried to build from source with TBB (make WITH_TBB=1), but "make" reports 6 errors.

    Versions are:
    MacOSX version: 10.10.5 (Yosemite)
    Bowtie2 src version: 2.2.8
    TBB version: 4.4-20160128

    Someone has experienced the same problem and has a solution?

    The trace begin with:

    $ make WITH_TBB=1
    c++ -O3 -m64 -msse2 -funroll-loops -g3 -DCOMPILER_OPTIONS=""-O3 -m64 -msse2 -funroll-loops -g3 -DPOPCNT_CAPABILITY -DWITH_TBB"" -DPOPCNT_CAPABILITY -DWITH_TBB \
    -fno-strict-aliasing -DBOWTIE2_VERSION=""`cat VERSION`"" -DBUILD_HOST=""`hostname`"" -DBUILD_TIME=""`date`"" -DCOMPILER_VERSION=""`c++ -v 2>&1 | tail -1`"" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DBOWTIE_MM -DBOWTIE2 -DNDEBUG -Wall \
    -I third_party \
    -o bowtie2-build-s bt2_build.cpp \
    ccnt_lut.cpp ref_read.cpp alphabet.cpp shmem.cpp edit.cpp bt2_idx.cpp bt2_io.cpp bt2_util.cpp reference.cpp ds.cpp multikey_qsort.cpp limit.cpp random_source.cpp diff_sample.cpp bowtie_build_main.cpp \
    -lpthread -ltbb -ltbbmalloc_proxy
    In file included from bt2_build.cpp:27:
    In file included from ./bt2_idx.h:42:
    In file included from ./blockwise_sa.h:24:
    In file included from /usr/local/include/tbb/tbb.h:53:
    In file included from /usr/local/include/tbb/flow_graph.h:30:
    /usr/local/include/tbb/task.h:913:13: error: no matching function for call to object of type 'const VSorting_worker<SString<char> >'
    my_func();
    ^~~~~~~
    /usr/local/include/tbb/task.h:917:9: note: in instantiation of member function 'tbb::internal::function_task<VSorting_worker<SString<char> > >::execute'
    requested here
    function_task( const F& f ) : my_func(f) {}
    ^
    /usr/local/include/tbb/task_group.h:100:79: note: in instantiation of member function 'tbb::internal::function_task<VSorting_worker<SString<char> >
    >::function_task' requested here
    owner().spawn( *new( owner().allocate_additional_child_of(*my_root) ) Task(f) );
    ^
    /usr/local/include/tbb/task_group.h:179:9: note: in instantiation of function template specialization 'tbb::internal::task_group_base::internal_run<const
    VSorting_worker<SString<char> >, tbb::internal::function_task<VSorting_worker<SString<char> > > >' requested here
    internal_run< const F, internal::function_task<F> >( f );
    ^
    ./diff_sample.h:832:12: note: in instantiation of function template specialization 'tbb::task_group::run<VSorting_worker<SString<char> > >' requested here
    tbb_grp.run(VSorting_worker<TStr>(((void*)&tparams[tid])));
    ^
    ./blockwise_sa.h:422:24: note: in instantiation of member function 'DifferenceCoverSample<SString<char> >::build' requested here
    _dc.get()->build(this->_nthreads);
    ^
    ./blockwise_sa.h:401:4: note: (skipping 1 context in backtrace; use -ftemplate-backtrace-limit=0 to see all)
    build();
    ^
    ./blockwise_sa.h:216:32: note: in instantiation of member function 'KarkkainenBlockwiseSA<SString<char> >::reset' requested here
    { _randomSrc.init(__seed); reset(); _done = new bool[_nthreads]; }
  • GenoMax
    Senior Member
    • Feb 2008
    • 7142

    #2
    Is there a reason you are compiling this on your own? Have you tried the compiled binary provided for OS X?

    Comment

    • Luis
      Junior Member
      • Oct 2015
      • 2

      #3
      Yes. I try to compile with TBB becasuse the MacOSX binary only launch one thread and the source version compiled without TBB also only launch one thread. So, my last option was compilation with TBB.
      Thank you for your answer.

      Comment

      • yueluo
        Member
        • Aug 2013
        • 82

        #4
        I had problems compiling bowtie2 with TBB support too. My OS was Centos 6.6. Bowtie2 source and TBB versions were the same as yours.
        My 'fix' was to compile with LDFLAGS=-L/pathto/lib(or LD_RUN_PATH=/pathto/lib) but not CPPFLAGS=-I/pathto/include(or INC=/pathto/include). Sounds weird but it did work for me...
        Hope this helps.

        Comment

        Latest Articles

        Collapse

        • kinpict.com
          Reply to 16S/ITS Profiling vs. Shotgun Metagenomics: What Changes in Your Workflow?
          by kinpict.com
          The part about this topic feels surprisingly grounded, and the details on the page is the bit that made me slow down. I’d keep <a href="https://kinpict.com/">ai family photo generator</a> bookmarked for later.
          Today, 06:37 PM
        • SEQadmin2
          16S/ITS Profiling vs. Shotgun Metagenomics: What Changes in Your Workflow?
          by SEQadmin2





          NGS has revolutionized clinical microbiology by offering new ways to identify and surveil pathogens without prior knowledge of the target. One popular approach is 16S rRNA and ITS amplicon sequencing, which targets specific microbial markers. But studies are increasingly incorporating shotgun metagenomics, a technique that sequences all DNA from a sample without targeting specific microbial markers. This approach allows more detailed taxonomic classification,...
          10-30-2026, 06:46 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by SEQadmin2, 11-12-2026, 07:59 AM
        0 responses
        27 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 11-05-2026, 09:25 AM
        0 responses
        35 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 11-03-2026, 11:54 AM
        2 responses
        56 views
        0 reactions
        Last Post kinpict.com  
        Started by SEQadmin2, 10-28-2026, 09:57 AM
        0 responses
        175 views
        0 reactions
        Last Post SEQadmin2  
        Working...