Makefileが次のように読み取るプログラム( vcftools )をインストールしようとしています。
# Make file for vcftools
# Author: Adam Auton
# ($Revision: 230 $)
# Compiler
CPP = g++
# Output executable
EXECUTABLE = vcftools
# Flag used to turn on compilation of PCA routines
ifndef VCFTOOLS_PCA
VCFTOOLS_PCA = 0
endif
# Compiler flags
CPPFLAGS = -O2 -Wall -Wextra -D_FILE_OFFSET_BITS=64
#CPPFLAGS = -g
# Included libraries (zlib)
#LIB = -lz
LIB = -lz -I/usr/local/include/ -L/usr/local/lib/
OBJS = vcftools.o vcf_file.o vcf_entry.o \
vcf_entry_getters.o vcf_entry_setters.o \
vcf_file_filters.o vcf_file_output.o \
vcf_file_format_convert.o \
vcf_file_diff.o parameters.o \
vcf_file_index.o \
output_log.o
このMakefileを正しく実行することができませんでしたが、代わりに次のようなエラーが発生します。
vcf_file.cpp:(.text+0xe72): undefined reference to `gzbuffer'
collect2: ld returned 1 exit status
make[1]: *** [vcftools] Error 1
make[1]: Leaving directory `/home/Public/Packages/vcftools_0.1.10/cpp'
/bin/sh: 2: cd: can't cd to perl
make: *** [install] Error 2
問題の一部は、zlibのインストールパスに関連するエラーがあることだと思います。-Iパスと-Lパスをzlibのインストールに一致するように変更しようとしましたが、うまくいきませんでした(zlibファイルが含まれているように見えるフォルダーがたくさんあります)。
さらに、このプログラムに関連する他のフォーラム(ここ)を検索すると、zlib1g-devが必要になる可能性があります。zlib1g-devは私のコンピューター上にあります(ubuntuソフトウェアセンターに表示されます)が、次のように入力しても表示されません。
root@root:/home/Public/Packages/vcftools_0.1.10/cpp# whereis zlib1g-dev
zlib1g-dev:
root@root:/home/Public/Packages/vcftools_0.1.10/cpp# which zlib1g-dev
zlibを削除して再インストールすることを検討しましたが、いくつかのプログラムがそれに依存しているようです。インストールまたは削除を実行しようとすると、次のメッセージが表示されます。
sudo apt-get installzlib-devel
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package zlib-devel
問題が私のコンピューターのどこにzlibがインストールされているのか、インストールのエラーなのか、それとも完全に頭上にあるのかはわかりません。任意の提案をいただければ幸いです。ありがとうございました。