daniel@ux1.cso.uiuc.edu (12/15/89)
machine: sun 3/50 version: g++ 1.36/libg++ 1.36.1 problem: libg++ doesn't compile. Problem with builtin.cc (and possibly others) Makefile output is: (cd src; make GXX="g++" GXXFLAGS=" -I/usr/local/src/languages/libg++/g++-includ e -g -O -fstrength-reduce -felide-constructors -fschedule-insns -fdelayed-branc h -fsave-memoized -Wall " GXXLDFLAGS="-L/usr/local/src/languages/libg++/src -lg ++ -lm " LIBDIR="/usr/local/lib/gcc" SRCIDIR="/usr/local/src/languages/libg++/g+ +-include" CC="gcc" CFLAGS=" -I/usr/local/lib/gcc-include -I/usr/include -I/usr/ local/src/languages/libg++/g++-include -g -O -fstrength-reduce -fdelayed-branch -Wall " RANLIB="ranlib" LDXX="/usr/local/lib/gcc/gcc-ld" GXXCRT1="/usr/local/li b/gcc/crt1+.o" MAKE="make" prefix="/usr/local" ) g++ -I/usr/local/src/languages/libg++/g++-include -g -O -fstrength-reduce -feli de-constructors -fschedule-insns -fdelayed-branch -fsave-memoized -Wall -c Al locQueue.cc g++ -I/usr/local/src/languages/libg++/g++-include -g -O -fstrength-reduce -feli de-constructors -fschedule-insns -fdelayed-branch -fsave-memoized -Wall -c bu iltin.cc builtin.cc: In function char *dtoa (double, char (= 103 ), int (= 0 ), int (= 6 )): builtin.cc:499: warning: unused variable `carry' builtin.cc:386: warning: unused variable `fworkend' /usr/local/src/languages/libg++/g++-include/time.h: At top level: In file included from /usr/local/src/languages/libg++/g++-include/osfcn.h:4, fro m builtin.cc:763: /usr/local/src/languages/libg++/g++-include/time.h:60: warning: type declaration of timezone shadows previous declaration /usr/local/src/languages/libg++/g++-include/time.h:60: warning: `timezone' was d eclared `extern' and later `static' builtin.cc:848: warning: structure has no data members as: error (/usr/tmp/cca24306.s:2409): Invalid operand as: error (/usr/tmp/cca24306.s:2436): Invalid operand *** Error code 1 Stop. *** Error code 1 Stop. Lines 2400-2450 of the assembler output at this stage is: 2400 jbsr __free__7ObstackPv 2401 .stabd 68,0,93 2402 LBE52: 2403 LBE50: 2404 .stabs "builtin.cc",132,0,0,Ltext 2405 .stabd 68,0,850 2406 unlk a6 2407 rts 2408 .stabs "_GLOBAL_$D$builtin_cc:F15",36,0,0,__GLOBAL_$D$builtin_cc 2409 .stabs "___DTOR_LIST__",22,0,0,__GLOBAL_$D$builtin_cc 2410 .stabs "_init",10,0,0,0 2411 .stabs "__GLOBAL_$I$builtin_cc",4,0,0,0 2412 .even 2413 .globl __GLOBAL_$I$builtin_cc 2414 __GLOBAL_$I$builtin_cc: 2415 .stabd 68,0,850 2416 link a6,#0 2417 LBB53: 2418 .stabd 68,0,155 2419 pea 4:w 2420 pea 4092:w 2421 pea __libgxx_io_ob 2422 jbsr ___7Obstackii 2423 .stabd 68,0,164 2424 pea 20:w 2425 pea __libgxx_fmtq 2426 jbsr ___10AllocQueuei 2427 .stabd 68,0,848 2428 LBB54: 2429 .stabd 68,0,846 2430 LBE54: 2431 LBE53: 2432 .stabd 68,0,848 2433 unlk a6 2434 rts 2435 .stabs "_GLOBAL_$I$builtin_cc:F15",36,0,0,__GLOBAL_$I$builtin_cc 2436 .stabs "___CTOR_LIST__",22,0,0,__GLOBAL_$I$builtin_cc 2437 .stabs "New_Time:S80",40,0,0,_New_Time 2438 .lcomm _New_Time,72 2439 .stabs "Old_Time:S80",40,0,0,_Old_Time 2440 .lcomm _Old_Time,72 2441 .stabs "chr_buf:S91=ar1;0;1;2",40,0,0,_chr_buf 2442 .lcomm _chr_buf,2 2443 .stabs "_libgxx_maxfmt:c=i20",0x80,0,0,0 The error is stated to be on two similar .stabs statements! I generated gcc claiming that I was a sun3 (or sun3os3) system, which I am. Any hints would be greatly appreciated. I have failed to get g++ to work on a Convex. Failing on a sun3 is very dissapointing! -- Daniel Pommert. pommert@uiuc.edu --
rfg@ics.uci.edu (Ron Guilmette) (12/15/89)
In article <1023100001@ux1.cso.uiuc.edu> daniel@ux1.cso.uiuc.edu writes: > > >machine: sun 3/50 >version: g++ 1.36/libg++ 1.36.1 > >problem: libg++ doesn't compile. Problem with builtin.cc (and possibly >others) > <... makefile output deleted...> >as: error (/usr/tmp/cca24306.s:2409): Invalid operand >as: error (/usr/tmp/cca24306.s:2436): Invalid operand This question comes up about once a week. If you get "Invalid operand" assembler errors from G++, it means that you are not using GAS (as you should be). I believe that the README file or the INSTALL file says that you must use GAS for a SUN system. // rfg
daniel@ux1.cso.uiuc.edu (12/16/89)
In reply by rfg@ics.uci.edu, it was stated that gas should be used: >In article <1023100001@ux1.cso.uiuc.edu> daniel@ux1.cso.uiuc.edu writes: >>machine: sun 3/50 >>version: g++ 1.36/libg++ 1.36.1 >>problem: libg++ doesn't compile. Problem with builtin.cc (and possibly >>others) >>as: error (/usr/tmp/cca24306.s:2409): Invalid operand >>as: error (/usr/tmp/cca24306.s:2436): Invalid operand >This question comes up about once a week. >If you get "Invalid operand" assembler errors from G++, it means that you >are not using GAS (as you should be). I believe that the README file >or the INSTALL file says that you must use GAS for a SUN system. > >// rfg However in gnu.g++.bugs, tale GAS, GLD, GCC and G++ 12:03 am Dec 15, 1989 (at TURING.CS.RPI.EDU) (From News system) Asks the OTHER weekly question: How do I get gcc and g++ to use gas? I have it installed in /usr/local/bin/gas. Patrick.Sanchez@irisa.fr mailed me this hint: By the way, to use gas you have to put it in the directory where you put gnu-ld gnu-cpp ... should be ..../lib/ He comments, however: I managed to compile libg++ using gas (gnu-assembler)... unfortunately I had to reverse to normal as for some files. Where is the ``official'' answer documented? What is it? -- Daniel Pommert. pommert@uiuc.edu
tiemann@LURCH.STANFORD.EDU (Michael Tiemann) (12/19/89)
Don't install the GNU assembler as `gas'. If cc1plus is in /usr/local/lib/gcc-cc1plus, and ld is in /usr/local/lib/gcc-ld, then the GNU assembler should be in /usr/local/lib/gcc-as. Simple? Michael