2017-08-28 226 views
0

我刚安装CD-HIT和遵循这些指令:Cygwin的程序编译但不运行的

Installation 
Most CD-HIT programs were written in C++. Installing CD-HIT package is very simple: 
download current CD-HIT at http://bioinformatics.org/cd-hit, for example cd-hit-2006-0215.tar.gz 
unpack the file with ” tar xvf cd-hit-2006-0215.tar.gz --gunzip” 
change dir by “cd cd-hit-2006” 
compile the programs by “make” 
you will have all cd-hit programs compiled 

我按照这些步骤,确实.exe文件作了:

cdhit.c++   cdhit-est-2d.c++    clstr_select_rep.pl 
cd-hit.exe   cd-hit-est-2d.exe    clstr_size_histogram.pl 
cdhit.o   cdhit-est-2d.o     clstr_size_stat.pl 
cdhit-2d.c++  cd-hit-para.pl     clstr_sort_by.pl 
cd-hit-2d.exe  cdhit-utility.c++    clstr_sort_prot_by.pl 
cdhit-2d.o   cdhit-utility.h    clstr_sql_tbl.pl 
cd-hit-2d-para.pl cdhit-utility.o    clstr_sql_tbl_sort.pl 
cdhit-454.c++  ChangeLog      clstr2tree.pl 
cd-hit-454.exe  clstr_cut.pl     clstr2txt.pl 
cdhit-454.o  clstr_list.pl     clstr2xml.pl 
cd-hit-auxtools clstr_list_sort.pl    doc 
cdhit-common.c++ clstr_merge.pl     FET.pl 
cdhit-common.h  clstr_merge_noorder.pl   license.txt 
cdhit-common.o  clstr_quality_eval.pl   make_multi_seq.pl 
cdhit-div.c++  clstr_quality_eval_by_link.pl Makefile 
cd-hit-div.exe  clstr_reduce.pl    plot_2d.pl 
cdhit-div.o  clstr_renumber.pl    plot_len1.pl 
cd-hit-div.pl  clstr_rep.pl     psi-cd-hit 
cdhit-est.c++  clstr_reps_faa_rev.pl   README 
cd-hit-est.exe  clstr_rev.pl     usecases 
cdhit-est.o  clstr_select.pl 

然而,当我类型:cd-hit-est在cygwin命令行,它会说:-bash: cd-hit.exe: command not found。我无法弄清楚为什么会发生这种情况。即使我在文件夹中找到了.exe文件,它仍然会出现相同的错误。

+0

让我猜,你在可执行文件所在的目录?然后尝试'。/ cd-hit-est'(即在程序前加上当前路径)。 –

+0

那么这是一个很好的猜测哈哈@Someprogrammerdude但我只能在链接此地图的路径时运行它,而不必键入cd-hit-est? – CodeNoob

+0

您可以随时将目录追加到路径中(在目录中,例如'export PATH = $ PATH:$(pwd)')。重要说明:不要将当前目录'.'添加到'PATH'。无论您身处何处,它始终是* current *目录,并且通常被认为是安全风险。如果你想让'PATH'永久变化,那么在你的'.profile'(或'.bash_profile')文件中添加命令(当然有正确的路径)。 –

回答

0

当您尝试在没有路径的情况下运行命令时,bash会尝试从PATH环境变量中查找每个目录中的命令名称。 通常当前目录“。”是不是在PATH所以你必须运行命令之前,命令名称添加绝对或相对路径:

./cd-hit.exe 

/absolute/path/to/your/cd-hit/program/cd-hit.exe 

如果你想从永久运行命令CD-hit.exe在任何地方,只要加入其中cd-命中被编译到任何现有的自动加载的bash轮廓文件的目录:

.profile 
.bashrc 
.bash_profile 

PATH=$PATH:/absolute/path/to/your/cd-hit/program 
export PATH