bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU make 4.3.91 on Manjaro 17 — bi-arch problem


From: Bruno Haible
Subject: GNU make 4.3.91 on Manjaro 17 — bi-arch problem
Date: Wed, 19 Oct 2022 02:20:52 +0200

On Manjaro Linux 17, installed from manjaro-kde-17.1.12-stable-x86_64.iso,
it is possible to build 64-bit binaries (with CC="gcc") or 32-bit binaries
(with CC="gcc -m32").

With CC="gcc -32", the compilation fails:

$ make
...
gcc -m32 -I/usr/include/guile/2.2 -pthread  -g -O2 -Wl,--export-dynamic 
-L/home/bruno/prefix32/lib -o make src/ar.o src/arscan.o src/commands.o 
src/default.o src/dir.o src/expand.o src/file.o src/function.o src/getopt.o 
src/getopt1.o src/guile.o src/hash.o src/implicit.o src/job.o src/load.o 
src/loadapi.o src/main.o src/misc.o src/output.o src/read.o src/remake.o 
src/rule.o src/shuffle.o src/signame.o src/strcache.o src/variable.o 
src/version.o src/vpath.o  src/posixos.o  src/remote-stub.o  -lguile-2.2 -lgc  
lib/libgnu.a   -ldl 
/bin/ld: skipping incompatible 
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../libguile-2.2.so when searching 
for -lguile-2.2
/bin/ld: skipping incompatible /usr/lib/libguile-2.2.so when searching for 
-lguile-2.2
/bin/ld: cannot find -lguile-2.2
/bin/ld: skipping incompatible 
/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../libgc.so when searching for -lgc
/bin/ld: skipping incompatible /usr/lib/libgc.so when searching for -lgc
/bin/ld: cannot find -lgc
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:821: make] Error 1

The cause:
libguile-2.2.so happens to be installed only as 64-bit binaries, in /usr/lib.
Not as 32-bit binaries, in /usr/lib32. Yet, /usr/include/guile/2.2/ exists.

The configuration has produced incorrect results:
...
checking for GNU Guile... 2.2
checking for GUILE... yes
checking for libguile.h... yes
...
The first two among these findings are wrong, since /usr/lib32/libguile.* does
not exist.

$ grep GUILE config.status
S["HAVE_GUILE_FALSE"]="#"
S["HAVE_GUILE_TRUE"]=""
S["GUILE_LIBS"]="-lguile-2.2 -lgc "
S["GUILE_CFLAGS"]="-I/usr/include/guile/2.2 -pthread "
D["HAVE_GUILE"]=" 1"

These five values are all wrong.

Bruno






reply via email to

[Prev in Thread] Current Thread [Next in Thread]