Skip to content
This repository has been archived by the owner on Jan 31, 2020. It is now read-only.

Pindel build fails every time on htslib #46

Open
lachlansimpson opened this issue Jul 25, 2016 · 3 comments
Open

Pindel build fails every time on htslib #46

lachlansimpson opened this issue Jul 25, 2016 · 3 comments

Comments

@lachlansimpson
Copy link

Every attempt to ./INSTALL fails with this error:

g++ -L/config/binaries/htslib/1.3.1/ -Wl,-rpath /config/binaries/htslib/1.3.1//lib pindel.o reader.o reporter.o searcher.o parameter.o refreader.o control_state.o search_deletions_nt.o search_inversions.o search_inversions_nt.o bam2depth.o search_tandem_duplications.o search_tandem_duplications_nt.o output_sorter.o farend_searcher.o search_variant.o searchshortinsertions.o searchdeletions.o output_file_data.o bddata.o shifted_vector.o read_buffer.o line_reader.o ifstream_line_reader.o gz_line_reader.o pindel_read_reader.o user_defined_settings.o fn_parameters.o logstream.o search_MEI_util.o search_MEI.o assembly.o genotyping.o -O3 -fopenmp -lhts -lm -lz -o pindel
/usr/bin/ld: cannot find -lhts
collect2: error: ld returned 1 exit status
make[1]: *** [pindel] Error 1
make[1]: Leaving directory `/config/source/pindel/src'
make: *** [pindel] Error 2

INSTALL failed
Possible reasons:

  1. 'cannot cd to [path]
    ->the htslib path provided was incorrect
  2. 'cannot find -lbam'
    ->htslib was not properly compiled/made, in that case, go to the htslib directory and follow the htslib installation instructions
    and run 'make'.

Things I have tried:

  • first attempt used our samtools installation (/config/binaries/samtools/1.3.1/) failed with above
  • installed htslib from .tgz on the github site, failed with same error
  • installed htslib from git clone, switched to 1.3.1, failed with the same error
  • installed htslib from git clone, back on head, failed with the same error
  • edited Makefile.local to put an "=" between rpath and the lib path, removed the extraneous /. Failed with the same error.

Running
ld --verbose -L/config/binaries/htslib/1.3.1/lib/ -lhts
on the command line gets me the error

attempt to open /config/binaries/htslib/1.3.1/lib//libhts.so succeeded
-lhts (/config/binaries/htslib/1.3.1/lib//libhts.so)
(lots of "found libs" msgs removed)
ld: warning: cannot find entry symbol _start; not setting start address

Is there something obvious I'm doing wrong?

@liangkaiye
Copy link
Contributor

Try version 1.2.

Outlook for Android

On Mon, Jul 25, 2016 at 11:21 AM +0800, "Lachlan Musicman" notifications@github.com wrote:

Every attempt to ./INSTALL fails with this error:

g++ -L/config/binaries/htslib/1.3.1/ -Wl,-rpath /config/binaries/htslib/1.3.1//lib pindel.o reader.o reporter.o searcher.o parameter.o refreader.o control_state.o search_deletions_nt.o search_inversions.o search_inversions_nt.o bam2depth.o search_tandem_duplications.o search_tandem_duplications_nt.o output_sorter.o farend_searcher.o search_variant.o searchshortinsertions.o searchdeletions.o output_file_data.o bddata.o shifted_vector.o read_buffer.o line_reader.o ifstream_line_reader.o gz_line_reader.o pindel_read_reader.o user_defined_settings.o fn_parameters.o logstream.o search_MEI_util.o search_MEI.o assembly.o genotyping.o -O3 -fopenmp -lhts -lm -lz -o pindel
/usr/bin/ld: cannot find -lhts
collect2: error: ld returned 1 exit status
make[1]: *** [pindel] Error 1
make[1]: Leaving directory `/config/source/pindel/src'
make: *** [pindel] Error 2

INSTALL failed
Possible reasons:

  1. 'cannot cd to [path]
    ->the htslib path provided was incorrect
  2. 'cannot find -lbam'
    ->htslib was not properly compiled/made, in that case, go to the htslib directory and follow the htslib installation instructions
    and run 'make'.

Things I have tried:

  • first attempt used our samtools installation (/config/binaries/samtools/1.3.1/) failed with above
  • installed htslib from .tgz on the github site, failed with same error
  • installed htslib from git clone, switched to 1.3.1, failed with the same error
  • installed htslib from git clone, back on head, failed with the same error
  • edited Makefile.local to put an "=" between rpath and the lib path, removed the extraneous /. Failed with the same error.

Running
ld --verbose -L/config/binaries/htslib/1.3.1/lib/ -lhts
on the command line gets me the error

attempt to open /config/binaries/htslib/1.3.1/lib//libhts.so succeeded
-lhts (/config/binaries/htslib/1.3.1/lib//libhts.so)
(lots of "found libs" msgs removed)
ld: warning: cannot find entry symbol _start; not setting start address

Is there something obvious I'm doing wrong?


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#46

@jmarshall
Copy link
Contributor

jmarshall commented Jul 25, 2016

The makefile was broken a while back. Apply the following:

         elif [ -d $(HTSLIB)/lib ]; then \
-            echo "HTSLIB_LDFLAGS=-L$(HTSLIB) -Wl,-rpath $(HTSLIB)/lib" >> $@; \
+            echo "HTSLIB_LDFLAGS=-L$(HTSLIB)/lib -Wl,-rpath,$(HTSLIB)/lib" >> $@; \
         else \
-            echo "HTSLIB_LDFLAGS=-L$(HTSLIB) -Wl,-rpath $(HTSLIB)" >> $@; \
+            echo "HTSLIB_LDFLAGS=-L$(HTSLIB) -Wl,-rpath,$(HTSLIB)" >> $@; \

Not sure why $(realpath …) was previously removed…

@sleongmgi
Copy link
Contributor

You can try the procedure listed in the Dockerfile shown below.

https://github.com/genome/pindel/pull/45/files

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants