* bug#19708: Bowtie fails to build
@ 2015-01-27 21:47 Andreas Enge
2015-01-28 14:11 ` Ricardo Wurmus
0 siblings, 1 reply; 5+ messages in thread
From: Andreas Enge @ 2015-01-27 21:47 UTC (permalink / raw
To: 19708
Hello,
bowtie currently fails to build on all three architectures on hydra.
On i686, the error message is:
Makefile:146: *** bowtie2 compilation requires a 64-bit platform . Stop.
Surprisingly, the same error message is shown on mip64el (!).
From its description, I do not expect users to run the program on mips,
so it might be the safest option to disable the build of these two
architectures.
On x86_64, the error message is
g++: error: unrecognized command line option '-stdlib=libstdc++'
See http://hydra.gnu.org/build/204787 .
Andreas
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#19708: Bowtie fails to build
2015-01-27 21:47 bug#19708: Bowtie fails to build Andreas Enge
@ 2015-01-28 14:11 ` Ricardo Wurmus
2015-01-28 16:57 ` Andreas Enge
0 siblings, 1 reply; 5+ messages in thread
From: Ricardo Wurmus @ 2015-01-28 14:11 UTC (permalink / raw
To: Andreas Enge; +Cc: 19708
Andreas Enge writes:
> bowtie currently fails to build on all three architectures on hydra.
>
> On i686, the error message is:
> Makefile:146: *** bowtie2 compilation requires a 64-bit platform . Stop.
>
> Surprisingly, the same error message is shown on mip64el (!).
> From its description, I do not expect users to run the program on mips,
> so it might be the safest option to disable the build of these two
> architectures.
>
> On x86_64, the error message is
> g++: error: unrecognized command line option '-stdlib=libstdc++'
> See http://hydra.gnu.org/build/204787 .
This is odd. The Makefile only adds this option on MacOS:
MACOS = 0
ifneq (,$(findstring Darwin,$(shell uname)))
MACOS = 1
ifneq (,$(findstring 13,$(shell uname -r)))
CPP = clang++
CC = clang
EXTRA_FLAGS += -stdlib=libstdc++
endif
endif
Whether or not a platform is 64-bit is determined with uname. Both
these errors relate to using uname.
Is it not available at build time?
I can build the package just fine with:
guix build -S bowtie
...
guix enviroment --pure bowtie
make
~~ Ricardo
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#19708: Bowtie fails to build
2015-01-28 14:11 ` Ricardo Wurmus
@ 2015-01-28 16:57 ` Andreas Enge
2015-01-29 10:01 ` Ricardo Wurmus
0 siblings, 1 reply; 5+ messages in thread
From: Andreas Enge @ 2015-01-28 16:57 UTC (permalink / raw
To: Ricardo Wurmus; +Cc: 19708
On Wed, Jan 28, 2015 at 03:11:06PM +0100, Ricardo Wurmus wrote:
> Whether or not a platform is 64-bit is determined with uname. Both
> these errors relate to using uname.
Clearly, only x86_64 is supported. Citing from Makefile:
BITS=32
ifeq (x86_64,$(shell uname -m))
BITS=64
endif
# msys will always be 32 bit so look at the cpu arch instead.
ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432)))
ifeq (1,$(MINGW))
BITS=64
endif
endif
ifeq (32,$(BITS))
$(error bowtie2 compilation requires a 64-bit platform )
endif
So we should disable mips and i686.
> This is odd. The Makefile only adds this option on MacOS:
> MACOS = 0
> ifneq (,$(findstring Darwin,$(shell uname)))
> MACOS = 1
> ifneq (,$(findstring 13,$(shell uname -r)))
> CPP = clang++
> CC = clang
> EXTRA_FLAGS += -stdlib=libstdc++
> endif
> endif
I see the following in my Makefile:
MACOS = 0
ifneq (,$(findstring Darwin,$(shell uname)))
MACOS = 1
endif
ifneq (,$(findstring 13,$(shell uname -r)))
CPP = clang++
CC = clang
EXTRA_FLAGS += -stdlib=libstdc++
endif
Notice the different placements of the "endif". Are we talking about different
versions of bowtie? I looked at the top Makefile from the result of
"guix build bowtie -S".
Andreas
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#19708: Bowtie fails to build
2015-01-28 16:57 ` Andreas Enge
@ 2015-01-29 10:01 ` Ricardo Wurmus
2015-01-30 16:07 ` Mark H Weaver
0 siblings, 1 reply; 5+ messages in thread
From: Ricardo Wurmus @ 2015-01-29 10:01 UTC (permalink / raw
To: Andreas Enge; +Cc: 19708
Andreas Enge writes:
> Clearly, only x86_64 is supported. Citing from Makefile:
> BITS=32
> ifeq (x86_64,$(shell uname -m))
> BITS=64
> endif
> # msys will always be 32 bit so look at the cpu arch instead.
> ifneq (,$(findstring AMD64,$(PROCESSOR_ARCHITEW6432)))
> ifeq (1,$(MINGW))
> BITS=64
> endif
> endif
> ifeq (32,$(BITS))
> $(error bowtie2 compilation requires a 64-bit platform )
> endif
>
> So we should disable mips and i686.
Submitted a patch to the ML to do just that.
>> This is odd. The Makefile only adds this option on MacOS:
>> MACOS = 0
>> ifneq (,$(findstring Darwin,$(shell uname)))
>> MACOS = 1
>> ifneq (,$(findstring 13,$(shell uname -r)))
>> CPP = clang++
>> CC = clang
>> EXTRA_FLAGS += -stdlib=libstdc++
>> endif
>> endif
>
> I see the following in my Makefile:
> MACOS = 0
> ifneq (,$(findstring Darwin,$(shell uname)))
> MACOS = 1
> endif
>
> ifneq (,$(findstring 13,$(shell uname -r)))
> CPP = clang++
> CC = clang
> EXTRA_FLAGS += -stdlib=libstdc++
> endif
>
> Notice the different placements of the "endif". Are we talking about different
> versions of bowtie? I looked at the top Makefile from the result of
> "guix build bowtie -S".
Oh, I must have been looking at master. In commit 4a99b0023[1] this was
changed to:
MACOS = 0
ifneq (,$(findstring Darwin,$(shell uname)))
MACOS = 1
ifneq (,$(findstring 13,$(shell uname -r)))
CPP = clang++
CC = clang
EXTRA_FLAGS += -stdlib=libstdc++
endif
endif
I'm not sure why it built the first time, though. (Compare [2] and
[3], both using the same release.) Anyway, I can go ahead and patch the
Makefile until a new release is out.
What do you think?
~~ Ricardo
[1]: https://github.com/BenLangmead/bowtie2/commit/4a99b0023bdfbbe486b9649489a32ea184c18c9a
[2]: http://hydra.gnu.org/build/175069
[3]: http://hydra.gnu.org/build/204787
^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#19708: Bowtie fails to build
2015-01-29 10:01 ` Ricardo Wurmus
@ 2015-01-30 16:07 ` Mark H Weaver
0 siblings, 0 replies; 5+ messages in thread
From: Mark H Weaver @ 2015-01-30 16:07 UTC (permalink / raw
To: Ricardo Wurmus; +Cc: 19708-done
Fixed in 241e12219. Thanks to Ricardo and Andreas for sorting this out!
Mark
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-01-30 16:08 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-27 21:47 bug#19708: Bowtie fails to build Andreas Enge
2015-01-28 14:11 ` Ricardo Wurmus
2015-01-28 16:57 ` Andreas Enge
2015-01-29 10:01 ` Ricardo Wurmus
2015-01-30 16:07 ` Mark H Weaver
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.