2012-11-27 73 views
1

Bowtie是tophat所需的程序。我需要這個程序來映射幾百個讀數與參考基因組。 Bowtie做映射部分,這需要很多CPU。在bowtie手冊中有一個選項可以執行此多線程,但需要安裝庫PThread。在linux上安裝PThread for tophat

我從this website下載了PThread。解壓縮到我的程序文件夾中,打開一個shell並站在這個目錄下。當輸入命令'make'時,我得到這個錯誤,我不知道如何解決這個問題。


if /bin/sh ./libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I. -Wall -g -O2 -MT PThreadRun.lo -MD -MP -MF ".deps/PThreadRun.Tpo" -c -o PThreadRun.lo PThreadRun.cpp; \

then mv -f ".deps/PThreadRun.Tpo" ".deps/PThreadRun.Plo"; else rm -f ".deps/PThreadRun.Tpo"; exit 1; fi

g++ -DHAVE_CONFIG_H -I. -I. -I. -Wall -g -O2 -MT PThreadRun.lo -MD -MP -MF .deps/PThreadRun.Tpo -c PThreadRun.cpp -fPIC -DPIC -o .libs/PThreadRun.o PThreadRun.cpp: In member function 'pthread_t PThreadRun::start()':

PThreadRun.cpp:28:38: error: 'redirectPthreadRun' was not declared in this scope

make: * [PThreadRun.lo] Error 1

make: Leaving directory `/install_dir'

make: * [all-recursive] Error 1

make: Leaving directory `/install_dir'

make: * [all] Error 2


任何人知道如何解決這個問題?

+0

查找到http://staff.science.uva.nl/~bterwijn/Contact/和發送電子郵件禮貌對軟件的作者.... –

+2

根據HTTP: //bowtie-bio.sourceforge.net/manual.shtml#building-from-source它需要「pthreads」庫,我95%肯定意味着可能已經安裝在你的機器上的pthreads庫,而不是你鏈接到的「PThread」庫,這似乎是一些圍繞pthreads的C++包裝。 – janneb

回答

1

您需要先運行configure。按照安裝說明:

These are generic installation instructions.

The configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a Makefile' in each directory of the package. It may also create one or more .h' files containing system-dependent definitions. Finally, it creates a shell script config.status' that you can run in the future to recreate the current configuration, and a file config.log' containing compiler output (useful mainly for debugging configure').

It can also use an optional file (typically called config.cache' and enabled with --cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.)

If you need to do unusual things to compile the package, please try to figure out how configure' could check whether to do them, and mail diffs or instructions to the address given in the README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it.

The file configure.ac' (or configure.in') is used to create configure' by a program called autoconf'. You only need configure.ac' if you want to change it or regenerate configure' using a newer version of `autoconf'.

The simplest way to compile this package is:

  1. cd' to the directory containing the package's source code and type ./configure' to configure the package for your system. If you're using csh' on an old version of System V, you might need to type sh ./configure' instead to prevent csh' from trying to execute configure' itself.

    Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for.

  2. Type `make' to compile the package.

  3. Optionally, type `make check' to run any self-tests that come with the package.

  4. Type `make install' to install the programs and any data files and documentation.

  5. You can remove the program binaries and object files from the source code directory by typing make clean'. To also remove the files that configure' created (so you can compile the package for a different kind of computer), type make distclean'. There is also a make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution.

+0

我運行了./configure(之前也做過了,但是忘了告訴...在這個日誌文件中,有一些錯誤,比如conftest.cc:25:28:致命錯誤:ac_nonexistent.h:沒有這樣的文件或目錄 – Jetse

+1

如果您在運行configure時遇到錯誤,那麼這是分發問題,您需要聯繫供應商。如果您無法配置工作,那麼絕對不會。 – ScoPi