Freebsd-7.4 + std gcc 4.2.1 fails to honour -march=i586
Julian H. Stacey
jhs at berklix.com
Sun Jul 17 01:19:37 UTC 2011
Hi all,
ENVIRONMENT:
Standard
gcc version 4.2.1 20070719 [FreeBSD]
that comes with
FreeBSD 7.4-RELEASE
on my 686 host with
CFLAGS += -march=i586
in
/etc/make.conf
used with
cd /usr/src/bin/who ; make clean ; make cleandir ; make clean ; make
reports
Warning: Object directory not changed from original /usr/src/usr.bin/who
cc -O2 -fno-strict-aliasing -march=i586 -c /usr/src/usr.bin/who/who.c
cc -O2 -fno-strict-aliasing -march=i586 -o who who.o
looking with
file who
reports
who: ELF 32-bit LSB executable, Intel 80386, version 1
(FreeBSD), for FreeBSD 7.4, dynamically linked (uses shared
libs), FreeBSD-style, not stripped
Problem:
Use it from a 586 7.4-RELEASE host (AMD+NFS)
file /host/sony/usr/src/usr.bin/who/who
/host/sony/usr/src/usr.bin/who/who: ELF 32-bit LSB executable,
Intel 80386, version 1 (FreeBSD), for FreeBSD 7.4, dynamically
linked (uses shared libs), FreeBSD-style, not stripped
/host/sony/usr/src/usr.bin/who/who
fails with
Illegal instruction
It's nothing special about /who.
Nothing to do with AMD+NFS,
As I've used cp too before executing,
I first found this while cross compiling from a fast 686
to install on a slow 586 for 7.3 to 7.4 upgrade, All these
binaries were not excutable on the 586: /boot/loader
/sbin/init /bin/sh /bin/csh getty
Can someone else please confirm this observation ?
Cheers,
Julian
--
Julian Stacey, BSD Unix Linux C Sys Eng Consultants Munich http://berklix.com
Reply below, not above; Indent with "> "; Cumulative like a play script.
Format: Plain text. Not HTML, multipart/alternative, base64, quoted-printable.
More information about the freebsd-hackers
mailing list