Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.2.6: make: *** No rule to make target 'false', needed by 'sub_commands/count_main_cmdline.hpp'. Stop. #87

Closed
mmokrejs opened this issue May 15, 2017 · 7 comments

Comments

@mmokrejs
Copy link

mmokrejs commented May 15, 2017

Hi,
do you have an idea what is wrong in the Makefile rules?

checking for yaggo... false
checking for x86_64-pc-linux-gnu-pkg-config... /usr/bin/x86_64-pc-linux-gnu-pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for __int128... yes
checking for std::numeric_limits<__int128>... no
checking for _NSGetExecutablePath... no
checking for execinfo.h... yes
checking for ext/stdio_filebuf.h... yes
checking for siginfo_t.si_int... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating tests/compat.sh
config.status: creating jellyfish-2.0.pc
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
>>> Source configured.
>>> Compiling source in /scratch/var/tmp/portage/sci-biology/jellyfish-2.2.6/work/Jellyfish-2.2.6 ...
make -j2 
make: *** No rule to make target 'false', needed by 'sub_commands/count_main_cmdline.hpp'.  Stop.
$ grep false /scratch/var/tmp/portage/sci-biology/jellyfish-2.2.6/work/Jellyfish-2.2.6/Makefile
    false; \
    false; \
am__v_P_0 = false
    n|no|NO) false;; \
DLLTOOL = false
YAGGO = false
          success=false; \
        @false
$

Is https://github.com/gmarcais/yaggo required? Indeed, installing it fixes the problem. Please make the configure exit if yaggo is not installed.

@gmarcais
Copy link
Owner

You should download the distribution tar ball instead. It does not have a dependency on yaggo.
https://github.com/gmarcais/Jellyfish/releases/download/v2.2.6/jellyfish-2.2.6.tar.gz

@mmokrejs
Copy link
Author

I want the source tarball. I am fetching ttps://github.com/gmarcais/Jellyfish/archive/v2.2.6.tar.gz . Actually, here is an update ebuild for Gentoo Linux I am merely speaking about here. ;-)

https://cgit.gentoo.org/proj/sci.git/tree/sci-biology/jellyfish/jellyfish-2.2.6.ebuild

@gmarcais
Copy link
Owner

Maybe there is a policy issue with Gentoo that I do not understand here that forces you to grab the Github generated tarball.

The tarball jellyfish-2.2.6.tar.gz IS a source tarball. It is THE official source distribution of Jellyfish. It contains all the normal development files that one except in an autoconf/automake package, like thousand of others. I am sure many (most?) ebuild in Gentoo work from that type of tarball.

The Github generated tarball is a copy of the git tree. It is redundant in my opinion, and it is not what the source distribution of an autoconf/automake package looks like (it has more dependencies for one).

@mmokrejs
Copy link
Author

OK, I understand now. The https://github.com/gmarcais/Jellyfish/releases/download/v2.2.6/jellyfish-2.2.6.tar.gz URL indeed unpacks into ./jellyfish-2.2.6/, whcih is good. I still see a configure check for yaggo but make doe snot break later. So, you can close this issue. Thank you. (am pushing out the changes now).

@enricorox
Copy link

Now same error appears to me

make: *** No rule to make target 'false', needed by 'sub_commands/count_main_cmdline.hpp'. Stop.

I don't know how to solve.

OS: Ubuntu 20.04.4

@gmarcais
Copy link
Owner

@enricorox Are you working from the jellyfish-2.3.0.tar.gz file, as explained above? Here is a short Dockerfile as an example how to compile and that it should work with Ubuntu 20.04. If it doesn't work for you, please send a longer bug report (URL of source downloaded, command run, platform, etc.).

FROM ubuntu:20.04

RUN apt update && \
    apt install -y build-essential yaggo wget

RUN wget https://github.com/gmarcais/Jellyfish/releases/download/v2.3.0/jellyfish-2.3.0.tar.gz && \
    tar zxf jellyfish-2.3.0.tar.gz && \
    cd jellyfish-2.3.0 && \
    ./configure && \
    make && \
    make install && \
    ldconfig

Then, to compile and test:

> sudo docker build -t jellyfish .
... lots of output ...
Removing intermediate container 00ed7f4c90ee
 ---> dd4f4cfe6c85
Successfully built dd4f4cfe6c85
Successfully tagged jellyfish:latest
> sudo docker run --rm jellyfish jellyfish --help
Usage: jellyfish <cmd> [options] arg...
Where <cmd> is one of: count, bc, info, stats, histo, dump, merge, query, cite, mem, jf.
Options:
  --version        Display version
  --help           Display this message

@enricorox
Copy link

I've figured out I was working on JellyFish-2 master branch (https://github.com/zippav/Jellyfish-2).

Version 2.3.0 works like a charm even with source downloaded with git clone, thank you.

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

No branches or pull requests

3 participants