1、问题的发现
在作业1-linux使用和软件的安装中的第2题中,需要使用源码编译的方法安装Hisat2软件。首先通过Hisat2官方网站下载2.1.0版本的源码包,下载地址为cloud.biohpc.swmed.edu/index.php/s… 下载完成后得到了hisat2-2.1.0-source.zip这一压缩包
解压:
unzip hisat2-2.1.0-source.zip
进入hisat2目录,运行指令
make
开始编译安装,但是笔者出现了以下错误
报错:
dirname: 缺少操作数
请尝试执行 "dirname --help" 来获取更多信息。
/g++ -O3 -m64 -msse2 -funroll-loops -g3 -DCOMPILER_OPTIONS="\"-O3 -m64 -msse2 -funroll-loops -g3 -DPOPCNT_CAPABILITY\"" -DPOPCNT_CAPABILITY \
-fno-strict-aliasing -DHISAT2_VERSION="\"`cat VERSION`\"" -DBUILD_HOST="\"`hostname`\"" -DBUILD_TIME="\"`date`\"" -DCOMPILER_VERSION="\"`/g++ -v 2>&1 | tail -1`\"" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DBOWTIE_MM -DBOWTIE2 -DNDEBUG -Wall -DMASSIVE_DATA_RLCSA \
-I third_party \
-o hisat2-build-s hisat2_build.cpp \
ccnt_lut.cpp ref_read.cpp alphabet.cpp shmem.cpp edit.cpp gfm.cpp reference.cpp ds.cpp multikey_qsort.cpp limit.cpp random_source.cpp tinythread.cpp diff_sample.cpp hisat2_build_main.cpp \
-lpthread
/bin/sh: 1: /g++: not found
make: *** [Makefile:275:hisat2-build-s] 错误 127
2、问题的解决
通过网络查询得知,是由于系统没有装C++编译器,安装相应编译器即可解决此问题。使用
sudo apt-get install g++
成功安装C++编译器
再次尝试运行
make,现在可以进行编译了
3、检验是否成功安装
运行hisat2
成功解决问题。(以上内容仅供参考。)