From owner-freebsd-current Mon Jun 24 01:36:56 1996 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id BAA04453 for current-outgoing; Mon, 24 Jun 1996 01:36:56 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id BAA04444 for ; Mon, 24 Jun 1996 01:36:46 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.12/8.6.9) id SAA13588; Mon, 24 Jun 1996 18:34:11 +1000 Date: Mon, 24 Jun 1996 18:34:11 +1000 From: Bruce Evans Message-Id: <199606240834.SAA13588@godzilla.zeta.org.au> To: grog@lemis.de, terry@lambert.org Subject: Re: make fails Cc: FreeBSD-current@FreeBSD.ORG, uh@NU.cs.fsu.edu Sender: owner-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >> > cc -O -c /usr/src/usr.bin/lex/lib/libmain.c -o libmain.o >> > ld: invalid command option `-O' >> > *** Error code 1 >> >> Fascinating. For some non-evident reason, cc has decided to invoke >> the loader instead of the compiler. I can't see any good reason for >I thought this was expected behaviour for a single .c file without a -C? Without a -c. But there is a -c. -O is a not so new option to the linker (read your commit mail). The message from ld has nothing to do with the message from make about cc. Make prints `cc -O -c ...' to stdout and then runs cc. Then it runs `ld -O ${.TARGET} -x -r ${.TARGET}` without telling you what it is doing. Old versions of ld don't support -O so they print an error message to stderr. Bruce