Closed johnlees closed 7 years ago
Hey John,
Squeakr uses a CQF as the underlying data structure to count kmers. The CQF code uses two new instructions that were introduced in Intel Haswell (4th generation) line of CPUs. I guess the machine you are using doesn't have a Haswell or newer CPU. That's why you are getting an "illegal hardware instruction" issue.
I will try to release a patch so that the code can use the C implementation of the new instructions if the underlying hardware doesn't support them.
Ah, thanks for the explanation. I'd appreciate the patch, if you're able to make it!
Hey John,
I have pushed a new commit for the code to work on older-than-Haswell CPUs. The REAMDE is also updated with instructions on how to build.
Thanks Prashant
Thanks for that! I'm now getting a compile error, which I guess is due to missing zlib includes?
In file included from main.cc:49:0:
reader.h:35:21: error: ‘gzFile_s’ has not been declared
reader(FILE *in, gzFile_s *in_gzip, BZFILE *in_bzip2, int bzerror);
^
reader.h:38:4: error: ‘gzFile_s’ does not name a type
gzFile_s *in_gzip = nullptr;
^
I've got zlib.h
in /usr/include
which should be ok? I noticed some of the zlib stuff changed with the recent commit
Can you check the version of zlib and bzip2 on your machine? Here is what I have: $ apt-cache policy zlib1g-dev zlib1g-dev: Installed: 1:1.2.8.dfsg-2ubuntu4 Candidate: 1:1.2.8.dfsg-2ubuntu4 Version table: 1:1.2.8.dfsg-2ubuntu4 500 500 http://ca.archive.ubuntu.com/ubuntu xenial/main amd64 Packages 100 /var/lib/dpkg/status $ apt-cache policy bzip2 bzip2: Installed: 1.0.6-8 Candidate: 1.0.6-8 Version table: 1.0.6-8 500 500 http://ca.archive.ubuntu.com/ubuntu xenial/main amd64 Packages 100 /var/lib/dpkg/status
$ apt-cache policy zlib1g-dev
zlib1g-dev:
Installed: 1:1.2.3.4.dfsg-3ubuntu4
Candidate: 1:1.2.3.4.dfsg-3ubuntu4
Version table:
*** 1:1.2.3.4.dfsg-3ubuntu4 0
500 http://www.mirrorservice.org/sites/archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
100 /var/lib/dpkg/status
$ apt-cache policy bzip2
bzip2:
Installed: 1.0.6-1
Candidate: 1.0.6-1
Version table:
*** 1.0.6-1 0
500 http://www.mirrorservice.org/sites/archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
100 /var/lib/dpkg/status
Do you think the zlib version is too low?
Can you check if "gzFile_s" is declared in your "/usr/include/zlib.h"? If not you should upgrade your zlib package.
Thanks Prashant
Hi Prashant, I have installed zlib 1.2.11, and now squeakr has compiled and runs correctly. Thanks so much for your help! I look forward to using the tool. John
Hi,
I have compiled from source, but I get the following error when running
I compiled with gcc-4.9. The following is the result of
ldd main
Any ideas why this is happening?