I try to build Redis on a HPC cluster with a module system and get the following error. I do not have superuser rights and I do not know the exact distribution (I think it is a custom derivative of something).
$ curl -O https://download.redis.io/releases/redis-6.2.1.tar.gz
$ tar -xzf redis-6.2.1.tar.gz
$ cd redis-6.2.1
$ LC_ALL=C make
cd src && make all
make[1]: Entering directory '/path/mutation-prediction/redis-6.2.1/src'
Makefile.dep:1: *** multiple target patterns. Stop.
make[1]: Leaving directory '/path/mutation-prediction/redis-6.2.1/src'
make: *** [Makefile:6: all] Error 2
Additional information - GNU make 4.3 - GCC 10.1.0 - GNU libc 2.17
Comment From: Turakar
Workaround: src/Makefile.dep has multiple rules per line. If I insert newlines and remove backslashes such that all rules have their own line, make and make test succeed. Does somebody know what can cause this behaviour?
Only test failing:
*** [err]: Active defrag in tests/unit/memefficiency.tcl
Expected 1.52 < 1.4 (context: type eval line 109 cmd {assert {$frag < 1.4}} proc ::test)
Comment From: oranagra
@Turakar which OS and architecture are you using?
Comment From: Turakar
$ uname -a
Linux <hostname> 3.10.0-1160.15.2.el7.x86_64 #1 SMP Wed Feb 3 15:06:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
So seems like a RedHat Enterprise Linux 7 on an x86_64.
Comment From: oranagra
Is that failure in the defrag test consistent?
. /runtest --single unit/memefficiency
Comment From: Turakar
No, I got two "All tests passed" now.
Comment From: yossigo
Regarding the build issue, not sure what it is -- I can confirm that by simply using gcc 10.x and GNU make 4.3 this does not reproduce.