From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ECJiR-00051i-TW for qemu-devel@nongnu.org; Mon, 05 Sep 2005 12:21:04 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ECJiJ-0004wI-1V for qemu-devel@nongnu.org; Mon, 05 Sep 2005 12:20:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ECJiF-0004ok-Kw for qemu-devel@nongnu.org; Mon, 05 Sep 2005 12:20:51 -0400 Received: from [213.165.64.20] (helo=mail.gmx.net) by monty-python.gnu.org with smtp (Exim 4.34) id 1ECJc5-0007kt-QH for qemu-devel@nongnu.org; Mon, 05 Sep 2005 12:14:30 -0400 Message-ID: <431C6DB8.4040809@gmx.com> Date: Mon, 05 Sep 2005 18:09:28 +0200 From: Martin Bochnig MIME-Version: 1.0 Subject: Re: [Qemu-devel] compiling qemu-0.7.2 on Solaris express (gcc-3.4.4) References: <20050905132132.NGTZ23320.eastrmmtao05.cox.net@smtp.east.cox.net> <431C6A83.4080808@gmx.com> In-Reply-To: <431C6A83.4080808@gmx.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Reply-To: mb1x@gmx.com, qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Martin Bochnig wrote: > Ben Taylor wrote: > >> Assembler: apic.c >> "/var/tmp//ccO3Ifuk.s", line 165 : Illegal mnemonic >> "/var/tmp//ccO3Ifuk.s", line 165 : Syntax error >> gmake: *** [apic.o] Error 1 >> >> >> Ideas? > > > Just use "gnu-as" (often called "gas") instead of SUNW's "/usr/ccs/bin/as" and (a patched) 0.7.2 will also compile on x86, not only on SPARC Solaris. > On Solaris10 or 11_nevada it is not required to custom-build gcc for doing so anymore, just use "/usr/sfw/bin/gcc". It will then use gas, but still not gnu-ld. > However, it works. > > > martin Well known problem. Solaris/x86 (all versions including 2.10) has a broken assembler (if not "broken" at least not 100.00% compatible to GNU) So one must use the GNU assembler in certain cases. To make it all work, I also had to build a custom gcc in my old x86 days which was configured "--with-gnu-as" (and perhaps also "--with-gnu-ld", I don't recall). The procedure is described in the gcc sources. Today one may just use "/usr/sfw/bin/gcc", NOT "/opt/csw/gcc[2|3|4]/bin/gcc" ! Here you see the difference: $ uname -a SunOS daedal 5.8 Generic_117351-16 i86pc i386 i86pc $ isainfo -v 32-bit i386 applications $ /opt/csw/gcc3/bin/gcc -v Reading specs from /opt/csw/gcc3/lib/gcc/i386-pc-solaris2.8/3.4.4/specs Configured with: ../sources/gcc-3.4.4/configure --prefix=/opt/csw/gcc3 --with-local-prefix=/opt/csw --without-gnu-as --with-as=/usr/ccs/bin/as --without-gnu-ld --with-ld=/usr/ccs/bin/ld --enable-threads=posix --enable-shared --enable-multilib --enable-nls --with-included-gettext --with-libiconv-prefix=/opt/csw --with-x --enable-java-awt=xlib --enable-languages=all Thread model: posix gcc version 3.4.4 $ ^D Connection to daedal closed. $ ssh zeus Last login: Mon Sep 5 12:08:03 2005 from login Sun Microsystems Inc. SunOS 5.10 Generic January 2005 $ uname -a SunOS zeus 5.10 Generic i86pc i386 i86pc $ isainfo -v 64-bit amd64 applications sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu 32-bit i386 applications sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu $ /usr/sfw/bin/gcc -v Reading specs from /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/specs Configured with: /builds/sfw10-gate/usr/src/cmd/gcc/gcc-3.4.3/configure --prefix=/usr/sfw --with-as=/usr/sfw/bin/gas --with-gnu-as --with-ld=/usr/ccs/bin/ld --without-gnu-ld --enable-languages=c,c++ --enable-shared Thread model: posix gcc version 3.4.3 (csl-sol210-3_4-branch+sol_rpath) $