statgen / demuxlet

Genetic multiplexing of barcoded single cell RNA-seq
Apache License 2.0
116 stars 25 forks source link

installation problems #79

Open jjenny opened 3 years ago

jjenny commented 3 years ago

Hi,

I have htslib installed at ~/bin/htslib-1.11 and demuxlet downloaded to ~/bin/demuxlet.

I also have libtool installed ~/bin/libtool-2.4.6.

When I run autoreconf -vfi, I get: autoreconf: Entering directory .' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS} aclocal: warning: couldn't open directory 'm4': No such file or directory autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --force autoreconf: running: /usr/bin/autoheader --force autoreconf: running: automake --add-missing --copy --force-missing autoreconf: Leaving directory.'

And when I run ./configure --prefix ~/bin/demuxlet/, I get the following error (full config.log attached):

./configure: line 5186: syntax error near unexpected token 2.2' ./configure: line 5186:LT_PREREQ(2.2)'

Any ideas?

Jenny config.log

yimmieg commented 3 years ago

I think a number of people are having issues with dependencies for demuxlet. Ray, can you work with Anton to fix this?

J

Sent from a phone. Excuse the typos.

On Dec 9, 2020, at 1:57 PM, Jenny Chen notifications@github.com wrote:

 Hi,

I have htslib installed at ~/bin/htslib-1.11 and demuxlet downloaded to ~/bin/demuxlet.

I also have libtool installed ~/bin/libtool-2.4.6.

When I run autoreconf -vfi, I get: autoreconf: Entering directory .' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS} aclocal: warning: couldn't open directory 'm4': No such file or directory autoreconf: configure.ac: tracing autoreconf: configure.ac: not using Libtool autoreconf: running: /usr/bin/autoconf --force autoreconf: running: /usr/bin/autoheader --force autoreconf: running: automake --add-missing --copy --force-missing autoreconf: Leaving directory .'

And when I run ./configure --prefix ~/bin/demuxlet/, I get the following error (full config.log attached):

./configure: line 5186: syntax error near unexpected token 2.2' ./configure: line 5186: LT_PREREQ(2.2)'

Any ideas?

Jenny config.log

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

Gvaihir commented 3 years ago

htslib 1.11 is not supported, use 1.10.* https://github.com/statgen/demuxlet/issues/78#issuecomment-741997187

jjenny commented 3 years ago

Thanks for the quick response - I have switched to htslib 1.10.2 but get the same error messages when trying to compile. What version of gcc do you recommend for compiling?

config.log

Gvaihir commented 3 years ago

Can you use another repo instead: https://github.com/statgen/popscle?

jjenny commented 3 years ago

with popscle I am able to cmake: cmake ../ -DHTS_INCLUDE_DIRS=~/bin/htslib-1.10.2/ -DHTS_LIBRARIES=~/bin/htslib-1.10.2/libhts.a

but when I run make I run into this error: [ 2%] Building CXX object CMakeFiles/popscle.dir/allele.cpp.o [ 5%] Building CXX object CMakeFiles/popscle.dir/bam_ordered_reader.cpp.o /n/eddyfs01/home/jjenny/bin/popscle/bam_ordered_reader.cpp: In member function 'void BAMOrderedReader::close()': /n/eddyfs01/home/jjenny/bin/popscle/bam_ordered_reader.cpp:204:11: error: 'nullptr' was not declared in this scope hdr = nullptr; ^ make[2]: [CMakeFiles/popscle.dir/bam_ordered_reader.cpp.o] Error 1 make[1]: [CMakeFiles/popscle.dir/all] Error 2 make: *** [all] Error 2

On Wed, Dec 9, 2020 at 6:10 PM Gvaihir notifications@github.com wrote:

Can you use another repo instead: https://github.com/statgen/popscle?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/statgen/demuxlet/issues/79#issuecomment-742121774, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHEVDAROJAEFXN3D24GVOLST77WVANCNFSM4UT5IQYQ .

hyunminkang commented 3 years ago

I pushed a change that solves the compatibility issue with latest htslib (1.11). Let me know if the problem persists.

Puriney commented 3 years ago

I found popscle's docker container makes life smooth. https://github.com/statgen/popscle

skchronicles commented 2 years ago

Solution

For anyone else running into this issue, I found that installing libtool fixes the problem.

Here is a basic sent of instructions that you can follow to install htslib and demuxlet:

# Step 1. Install and build HTSlib 1.10 (required by demuxlet)
# Needs to be a sibling directory to demuxlet install,
# the name of the htslib directory must be called htslib
wget https://github.com/samtools/htslib/releases/download/1.10/htslib-1.10.tar.bz2 \
    && tar -vxjf htslib-1.10.tar.bz2 \
    && rm htslib-1.10.tar.bz2 \
    && cd htslib-1.10 \
    && autoreconf -i \
    && ./configure \
    && make \
    && make install \
    && ln -s /opt2/htslib-1.10 /opt2/htslib \
    && cd ..

# Step 2. Install and build demuxlet, the ./configure command 
# needs libtool installed first   
DEBIAN_FRONTEND=noninteractive apt-get install -y libtool \
    && git clone https://github.com/statgen/demuxlet.git \
    && cd demuxlet \
    && autoreconf -vfi \
    && ./configure \
    && make \
    && make install

I hope this helps!

Best Regards, @skchronicles