williamslab / ibis

Algorithm for rapid, phase-free detection of long identical by descent segments
GNU General Public License v3.0
17 stars 7 forks source link

compilation error #2

Closed ghost closed 4 years ago

ghost commented 4 years ago

Hi there, I'm hitting a compilation error for IBIS:

ibis $ make
g++ -MMD -std=c++11 -I. -Wall  -fopenmp -mpopcnt -O3 -o IBIS.o -c IBIS.cc
In file included from IBIS.cc:5:0:
./genetio/marker.h:7:10: fatal error: zlib.h: No such file or directory
 #include <zlib.h>
          ^~~~~~~~
compilation terminated.
make: *** [IBIS.o] Error 1

Any suggestions?

Thanks,

Nick

ghost commented 4 years ago

IBIS now compiles.

RAJESHKMAURYA commented 2 years ago

Hi, I m getting this following error. g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o IBIS.o -c IBIS.cc IBIS.cc:5:28: fatal error: genetio/marker.h: No such file or directory compilation terminated. make: *** [Makefile:72: IBIS.o] Error 1

DanielSeidman commented 2 years ago

Hello! Genetio is linked to this project as a submodule, as it is critical for efficiently processing IBIS input. If or when you cloned the repository, did you remember to use the --recurse-submodules tag? There are instructions in the readme if not. If you did this already, I may be able to help further if you confirm whether or not genetio's files are present in the directory in which you've placed IBIS and describe the process you've used to get them there if it differs from the README.

RAJESHKMAURYA commented 2 years ago

Hello! Genetio is linked to this project as a submodule, as it is critical for efficiently processing IBIS input. If or when you cloned the repository, did you remember to use the --recurse-submodules tag? There are instructions in the readme if not. If you did this already, I may be able to help further if you confirm whether or not genetio's files are present in the directory in which you've placed IBIS and describe the process you've used to get them there if it differs from the README

I USED THE SAME AS IT IS WRITTEN IN README AND AS PER YOU INSTRUCTION.

RAJESHKMAURYA commented 2 years ago

Hello! Genetio is linked to this project as a submodule, as it is critical for efficiently processing IBIS input. If or when you cloned the repository, did you remember to use the --recurse-submodules tag? There are instructions in the readme if not. If you did this already, I may be able to help further if you confirm whether or not genetio's files are present in the directory in which you've placed IBIS and describe the process you've used to get them there if it differs from the README

I USED THE SAME AS IT IS WRITTEN IN README AND AS PER YOU INSTRUCTION.

git clone --recurse-submodules https://github.com/williamslab/ibis.git

Cloning into 'ibis'... remote: Enumerating objects: 405, done. remote: Counting objects: 100% (116/116), done. remote: Compressing objects: 100% (13/13), done. remote: Total 405 (delta 108), reused 107 (delta 103), pack-reused 289 Receiving objects: 100% (405/405), 927.07 KiB | 5.45 MiB/s, done. Resolving deltas: 100% (236/236), done. Submodule 'genetio' (https://github.com/williamslab/genetio.git) registered for path 'genetio' Cloning into '/home/----/ibis/genetio'... remote: Enumerating objects: 568, done.
remote: Counting objects: 100% (152/152), done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 568 (delta 142), reused 139 (delta 132), pack-reused 416
Receiving objects: 100% (568/568), 20.05 MiB | 10.90 MiB/s, done. Resolving deltas: 100% (388/388), done. Submodule path 'genetio': checked out 'c87463f5b17f6ddb6eab93823406c9c617ca7494'

cd /home/-----/ibis/

make g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o IBIS.o -c IBIS.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/personio.o -c genetio/personio.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/marker.o -c genetio/marker.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/superperson.o -c genetio/superperson.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/personloopdata.o -c genetio/personloopdata.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/personbulk.o -c genetio/personbulk.cc g++ -MMD -std=c++11 -I. -Wall -fopenmp -mpopcnt -O3 -o genetio/nuclearfamily.o -c genetio/nuclearfamily.cc genetio/nuclearfamily.cc:7:15: fatal error: bit: No such file or directory compilation terminated. make: *** [Makefile:72: genetio/nuclearfamily.o] Error 1

DanielSeidman commented 2 years ago

So, the standard library "bit" may only be available from c++20 onwards. If you have that, then it's worth making sure that you also have access to bit.