質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • make

    70questions

    make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

make でソフトウェアをビルドできない

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 184

shotaroh

score 8

 前提・実現したいこと

バイオインフォマティクス系のソフトウェア(https://sourceforge.net/projects/samtools/files/samtools/0.1.19/)の
インストールを試みたところ、以下のようなエラーが出てしまい、ビルドできません。
解決法をさがしており、なかなかうまいこといかないので、こちらで質問させていただきました。
OSはmacOS High Sierraです。

$ make
make[2]: Nothing to be done for `lib'.
make[2]: Nothing to be done for `lib'.
make[2]: Nothing to be done for `lib'.
gcc -g -Wall -O2 -o samtools bam_tview.o bam_plcmd.o sam_view.o bam_rmdup.o bam_rmdupse.o bam_mate.o bam_stat.o bam_color.o bamtk.o kaln.o bam2bcf.o bam2bcf_indel.o errmod.o sample.o cut_target.o phase.o bam2depth.o padding.o bedcov.o bamshuf.o bam_tview_curses.o bam_tview_html.o  libbam.a -Lbcftools -lbcf  -lcurses  -lm -lz -lpthread
gcc -g -Wall -O2 -o bcftools call1.o main.o ../kstring.o ../bgzf.o ../knetfile.o ../bedidx.o -L.  -lbcf -lm -lz -lpthread
make[1]: Nothing to be done for `all'.

INSTALL 注意書き

System Requirements
===================

SAMtools depends on the zlib library <http://www.zlib.net>. Version 1.2.3+ is
preferred and with 1.2.3+ you can compile razip and use it to compress a FASTA
file. SAMtools' faidx is able to index a razip-compressed FASTA file to save
diskspace. Older zlib also works with SAMtools, but razip cannot be compiled.

The text-based viewer (tview) requires the GNU ncurses library
<http://www.gnu.org/software/ncurses/>, which comes with Mac OS X and most of
the modern Linux/Unix distributions. If you do not have this library installed,
you can still compile the rest of SAMtools by manually changing:
`-D_CURSES_LIB=1' to `-D_CURSES_LIB=0' at the line starting with `DFLAGS=', and
comment out the line starting with `LIBCURSES='.


Compilation
===========

Type `make' to compile samtools. If you have zlib >= 1.2.2.1, you can compile
razip with `make razip'.


Installation
============

Copy `samtools', `bcftools/bcftools' and other executables/scripts in `misc' to
a location you want (e.g. a directory in your $PATH). You may also copy
`samtools.1' and `bcftools/bcftools.1' to a directory in your $MANPATH such
that the `man' command may find the manual.

 試したこと

zlib がないのかもと思いましたが、あったようです。

$ brew install zlib
Warning: zlib 1.2.11 is already installed and up-to-date
To reinstall 1.2.11, run `brew reinstall zlib`

ちなみにファイルの中身です。

/samtools-0.1.19$ ls
AUTHORS            bam2bcf_indel.c        bam_index.o        bam_rmdup.o        bamshuf.c        cut_target.o        knetfile.h        phase.c            sam_view.c
COPYING            bam2bcf_indel.o        bam_lpileup.c        bam_rmdupse.c        bamshuf.o        errmod.c        knetfile.o        phase.o            sam_view.o
ChangeLog.old        bam2depth.c        bam_lpileup.o        bam_rmdupse.o        bamtk.c            errmod.h        kprobaln.c        razf.c            sample.c
INSTALL            bam2depth.o        bam_mate.c        bam_sort.c        bamtk.o            errmod.o        kprobaln.h        razf.h            sample.h
Makefile        bam_aux.c        bam_mate.o        bam_sort.o        bcftools        examples        kprobaln.o        razf.o            sample.o
Makefile.mingw        bam_aux.o        bam_md.c        bam_stat.c        bedcov.c        faidx.c            kseq.h            razip            samtools
NEWS            bam_cat.c        bam_md.o        bam_stat.o        bedcov.o        faidx.h            ksort.h            razip.c            samtools.1
bam.c            bam_cat.o        bam_pileup.c        bam_tview.c        bedidx.c        faidx.o            kstring.c        razip.o            win32
bam.h            bam_color.c        bam_pileup.o        bam_tview.h        bedidx.o        kaln.c            kstring.h        sam.c
bam.h~            bam_color.o        bam_plcmd.c        bam_tview.o        bgzf.c            kaln.h            kstring.o        sam.h
bam.o            bam_endian.h        bam_plcmd.o        bam_tview_curses.c    bgzf.h            kaln.o            libbam.a        sam.o
bam2bcf.c        bam_import.c        bam_reheader.c        bam_tview_curses.o    bgzf.o            khash.h            misc            sam_header.c
bam2bcf.h        bam_import.o        bam_reheader.o        bam_tview_html.c    bgzip.c            klist.h            padding.c        sam_header.h
bam2bcf.o        bam_index.c        bam_rmdup.c        bam_tview_html.o    cut_target.c        knetfile.c        padding.o        sam_header.o
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+1

メッセージを見る限り、makeには成功しているにもかかわらず何度もmakeをやり直そうとしていて、「もう出来てるんだけど?」と言われているように見えます。実際、samtoolsというファイルは存在しているようじゃないですか。何をもってビルドに失敗したと判断したのですか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/24 23:30

    普通はmake installなんて手順があるのですが、どうもこいつはそこは手作業でやらなければならないようですね。つまり、/usr/local/binなりなんなりpathの通ったディレクトリに実行ファイル(付随してできる関連スクリプト含む)を移してあげないと、使えるようにはならないですよ。

    キャンセル

  • 2018/06/24 23:34 編集

    頂いた回答を元に、調べたところやはり成功していたようです。
    以前別のバージョンの samtools をインストールしておりパスを通しておいたままアンインストールするのをわすれていたようです。
    このディレクトリ内で「./samtools」ではな「samtools」で実行してもバージョンか異なっていたため、ビルドが失敗していたと勘違いしていました。
    あらためて samtools を実行してみたところ、しっかりと望みのバージョンのもとが実行できていました。
    あとはパスを通せばなんとかなりそうです。
    ご回答ありがとうございます。

    キャンセル

+1

ふつう、解凍したファイル群の中にREADMEファイルが有り、その中にビルド法が書いてあるものです
makeコマンド単体でビルドはできるもんではありません

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/24 23:29

    INSTALL というファイルにビルド方が記載されていました。ありがとうございます。

    キャンセル

+1

つmake clean&&make

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/24 23:41

    ご回答ありがとうございました。どうやら、make には成功していたようです。お騒がせいたしました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • make

    70questions

    make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。