Mailinglist Archive: opensuse-bugs (5398 mails)
| < Previous | Next > |
[Bug 279835] New: "which" recompilation on x86_64 links against i386 library
- From: bugzilla_noreply@xxxxxxxxxx
- Date: Fri, 1 Jun 2007 00:51:28 -0600 (MDT)
- Message-id: <bug-279835-21960@xxxxxxxxxxxxxxxxxxxxxxxxx/>
https://bugzilla.novell.com/show_bug.cgi?id=279835
Summary: "which" recompilation on x86_64 links against i386
library
Product: SUSE Linux 10.1
Version: Final
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Basesystem
AssignedTo: bnc-team-screening@xxxxxxxxxxxxxxxxxxxxxx
ReportedBy: steiner-reg@xxxxxxxxxxxxxx
QAContact: qa@xxxxxxx
When recompiling the util-linux.src.rpm on SuSE 10.1 and/or SLES 10, the
"which" binary is linked against a i386 library, causing a segfault when
executing "/usr/bin/which ls" etc.
That's because the which-2.13/Makefile contains a line
LIBS = /usr/lib/libiberty.a
When compiling on a x86_64 system with "binutils" and "binutils-32bit"
installed, this leads to:
gcc -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -o which getopt.o
getopt1.o bash.o which.o ./tilde/libtilde.a /usr/lib/libiberty.a
/usr/lib64/gcc/x86_64-suse-linux/4.1.0/../../../../x86_64-suse-linux/bin/ld:
warning: i386 architecture of input file `/usr/lib/libiberty.a(xmalloc.o)' is
incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.0/../../../../x86_64-suse-linux/bin/ld:
warning: i386 architecture of input file `/usr/lib/libiberty.a(xexit.o)' is
incompatible with i386:x86-64 output
The resulting which segfaults:
backus BUILD/which-2.13# ./which /ls
Segmentation fault
Changing the make call in the spec file to "make
LIBS=/usr/%{_lib}/libiberty.a" solves the problem.
I'm not sure if this is in SuSE 10.1 only or also in later versions since we
use only 10.1 and SLES 10.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
Summary: "which" recompilation on x86_64 links against i386
library
Product: SUSE Linux 10.1
Version: Final
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Basesystem
AssignedTo: bnc-team-screening@xxxxxxxxxxxxxxxxxxxxxx
ReportedBy: steiner-reg@xxxxxxxxxxxxxx
QAContact: qa@xxxxxxx
When recompiling the util-linux.src.rpm on SuSE 10.1 and/or SLES 10, the
"which" binary is linked against a i386 library, causing a segfault when
executing "/usr/bin/which ls" etc.
That's because the which-2.13/Makefile contains a line
LIBS = /usr/lib/libiberty.a
When compiling on a x86_64 system with "binutils" and "binutils-32bit"
installed, this leads to:
gcc -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -o which getopt.o
getopt1.o bash.o which.o ./tilde/libtilde.a /usr/lib/libiberty.a
/usr/lib64/gcc/x86_64-suse-linux/4.1.0/../../../../x86_64-suse-linux/bin/ld:
warning: i386 architecture of input file `/usr/lib/libiberty.a(xmalloc.o)' is
incompatible with i386:x86-64 output
/usr/lib64/gcc/x86_64-suse-linux/4.1.0/../../../../x86_64-suse-linux/bin/ld:
warning: i386 architecture of input file `/usr/lib/libiberty.a(xexit.o)' is
incompatible with i386:x86-64 output
The resulting which segfaults:
backus BUILD/which-2.13# ./which /ls
Segmentation fault
Changing the make call in the spec file to "make
LIBS=/usr/%{_lib}/libiberty.a" solves the problem.
I'm not sure if this is in SuSE 10.1 only or also in later versions since we
use only 10.1 and SLES 10.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
| < Previous | Next > |