Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • Kolamite
    Junior Member
    • Nov 2012
    • 7

    Tophat Cygwin Build from source error: aio.h

    I'm running Cygwin on a Windows 7 machine and trying to build Tophat from source following this tutorial:


    I installed everything available through the cygwin installer. I've successfully (I think) installed Boost, SamTools, and Bowtie, and added all of them to my Path variable.

    Configure seems to run without complaint:

    Code:
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether build environment is sane... yes
    checking for gawk... gawk
    checking whether make sets $(MAKE)... yes
    checking for gawk... (cached) gawk
    checking for g++... g++
    checking for C++ compiler default output file name... a.exe
    checking whether the C++ compiler works... yes
    checking whether we are cross compiling... no
    checking for suffix of executables... .exe
    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 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 ANSI C... none needed
    checking dependency style of gcc... gcc3
    checking whether make sets $(MAKE)... (cached) yes
    checking for ranlib... ranlib
    checking for a BSD-compatible install... /usr/bin/install -c
    checking for a Python interpreter with version >= 2.4... python
    checking for python... /usr/bin/python
    checking for python version... 2.6
    checking for python platform... cygwin
    checking for python script directory... ${prefix}/lib/python2.6/site-packages
    checking for python extension module directory... ${exec_prefix}/lib/python2.6/site-packages
    checking for boostlib >= 1.38.0... yes
    checking for bamlib... yes
    checking build system type... i686-pc-cygwin
    checking whether the Boost::Thread library is available... yes
    checking for exit in -lboost_thread-mt... yes
    checking for exit in -lboost_system-mt... yes
    checking how to run the C preprocessor... gcc -E
    checking for egrep... 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 for stdlib.h... (cached) yes
    checking for string.h... (cached) yes
    checking for unistd.h... (cached) yes
    checking for ANSI C header files... (cached) yes
    checking for stdbool.h that conforms to C99... yes
    checking for _Bool... yes
    checking for inline... inline
    checking for pid_t... yes
    checking for size_t... yes
    checking for ptrdiff_t... yes
    checking for an ANSI C-conforming const... yes
    checking for special C compiler options needed for large files... no
    checking for _FILE_OFFSET_BITS value needed for large files... no
    checking for _LARGE_FILES value needed for large files... no
    checking for gzread in -lz... yes
    checking for stdlib.h... (cached) yes
    checking for GNU libc compatible malloc... yes
    checking for memset... yes
    checking for strdup... yes
    checking for strrchr... yes
    checking for strtol... yes
    checking for strsep... yes
    checking host system type... i686-pc-cygwin
    checking how to create a pax tar archive... gnutar
    checking dependency style of gcc... (cached) gcc3
    checking dependency style of g++... (cached) gcc3
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating src/Makefile
    config.status: creating config.h
    config.status: config.h is unchanged
    config.status: executing depfiles commands
    
    -- tophat 2.0.6 Configuration Results --
      C++ compiler:        g++ -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wuninitialized  -O3  -DNDEBUG -pthread -I/usr/include -I/usr/include -I./SeqAn-1.3
      Linker flags:
      GCC version:         gcc (GCC) 4.5.3
      Host System type:    i686-pc-cygwin
      Install prefix:      /usr/local
      Install eprefix:     ${prefix}
    
      See config.h for further configuration information.
      Email <[email protected], [email protected]> with questions and bug reports.
    Make returns these errors:

    Code:
    make  all-recursive
    make[1]: Entering directory `/cygdrive/c/cygwin/home/mayars1/tophat-2.0.6'
    Making all in src
    make[2]: Entering directory `/cygdrive/c/cygwin/home/mayars1/tophat-2.0.6/src'
    if g++ -DHAVE_CONFIG_H -I. -I. -I..      -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wuninitialized  -O3  -DNDEBUG -pthread -I/usr/include -I/usr/include -I./SeqAn-1.3 -MT reads.o -MD -MP -MF ".deps/reads.Tpo" -c -o reads.o reads.cpp; \
    then mv -f ".deps/reads.Tpo" ".deps/reads.Po"; else rm -f ".deps/reads.Tpo"; exit 1; fi
    g++: unrecognized option '-pthread'
    In file included from ./SeqAn-1.3/seqan/file.h:70:0,
                     from ./SeqAn-1.3/seqan/score/score_matrix.h:40,
                     from ./SeqAn-1.3/seqan/score.h:48,
                     from ./SeqAn-1.3/seqan/find.h:45,
                     from reads.cpp:21:
    ./SeqAn-1.3/seqan/system.h:57:17: fatal error: aio.h: No such file or directory
    compilation terminated.
    Makefile:1104: recipe for target `reads.o' failed
    make[2]: *** [reads.o] Error 1
    make[2]: Leaving directory `/cygdrive/c/cygwin/home/mayars1/tophat-2.0.6/src'
    Makefile:246: recipe for target `all-recursive' failed
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/cygdrive/c/cygwin/home/mayars1/tophat-2.0.6'
    Makefile:184: recipe for target `all' failed
    make: *** [all] Error 2
    The problem seems to be that aio.h is missing. I'm not terribly experienced with Unix or Cygwin and I've been looking all over the place for a workaround without success.

    Does anyone have a solution?
  • mbblack
    Senior Member
    • Aug 2009
    • 245

    #2
    I think your problem is more than that. TopHat is a 64-bit program with 64-bit dependencies, and it (like most short read genomic aligners) will require far more memory than can be addressed by Cygwin's 32-bit limited DLL emulation library.

    Cygwin, and anything running within its emulation layer, is restricted to 32-bit memory only. You need a real 64-bit Linux box (or OS X box) and preferable with a bare minimum of 8Gb RAM, or better 16-32Gb's.

    P.S. note it does not matter if your Windows release is 64-bit or your machine has tons of RAM - Cygwin, and everything that runs under it, is limited to 32-bit memory addressing only.
    Michael Black, Ph.D.
    ScitoVation LLC. RTP, N.C.

    Comment

    • Kolamite
      Junior Member
      • Nov 2012
      • 7

      #3
      Gotcha, I was misinformed.

      Thanks!

      Comment

      Latest Articles

      Collapse

      ad_right_rmr

      Collapse

      News

      Collapse

      Topics Statistics Last Post
      Started by SEQadmin2, 06-05-2026, 10:09 AM
      0 responses
      18 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-04-2026, 08:59 AM
      0 responses
      34 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-02-2026, 12:03 PM
      0 responses
      45 views
      0 reactions
      Last Post SEQadmin2  
      Started by SEQadmin2, 06-02-2026, 11:40 AM
      0 responses
      24 views
      0 reactions
      Last Post SEQadmin2  
      Working...