Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Post by Craig Pra » Fri, 15 Apr 1994 06:24:05



I am trying to compile gcc 2.5.8 on a Sun IPX under Solaris 2.3 using
gcc 2.3.3.  I can tell from posts in comp.os.solaris and gnu.gcc.bug
that others have done this before, so I hope I am having an "old"
problem.  Everything goes along fine until make reaches the file
tree.c.  Then I get the following errors:

make prefix=/opt/local/GNU CC=/opt/local/GNU/cygnus-sol2-1.0/bin/gcc LANGUAGE=c
/opt/local/GNU/cygnus-sol2-1.0/bin/gcc -c  -DIN_GCC -DSVR4  -g     -I. -I. -I./config tree.c
/usr/ccs/bin/as: "/tmp/cca001di.s", line 16160: error: can't compute value of an expression involving an external symbol
/usr/ccs/bin/as: "/tmp/cca001di.s", line 16161: error: can't compute value of an expression involving an external symbol
/usr/ccs/bin/as: "/tmp/cca001di.s", line 16163: error: can't compute value of an expression involving an external symbol
... <continues similarly for another dozen lines or so>

I also tried using gas to see if it was a problem with Sun's assembler
and gcc and got the following errors:

/opt/local/GNU/cygnus-sol2-1.0/bin/gcc -c  -DIN_GCC -DSVR4  -g     -I. -I. -I./config tree.c
/tmp/cca001dV.s: Assembler messages:



... <continues similarly for another dozen lines or so>

I configured this with the following:
  # ./configure --prefix=/opt/local/GNU
  Configuring for a sparc-sun-solaris2.3 host.
  Linked `config.h' to `./config/sparc/xm-sol2.h'
  Linked `tm.h' to `./config/sparc/sol2.h'
  Linked `aux-output.c' to `./config/sparc/sparc.c'
  Linked `tconfig.h' to `./config/sparc/xm-sol2.h'
  Linked `hconfig.h' to `./config/sparc/xm-sol2.h'
  Linked `md' to `./config/sparc/sparc.md'
  Merged sparc/x-sysv4.
  Merged sparc/t-sol2.
  Created `Makefile'.
  Links are now set up for target sparc-sun-solaris2.3.
  #
which seemed reasonble.  Can anyone give me a clue as to what the
problem is?  All help appreciated.  

Craig

------------------------------------------------------------
Craig A. Prall,                 Telephone: 703.883.6125
Member of the Technical Staff         Fax: 703.883.3315


McLean, VA 22102-3481

 
 
 

Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Post by Casper H.S. D » Fri, 15 Apr 1994 23:50:41



>I am trying to compile gcc 2.5.8 on a Sun IPX under Solaris 2.3 using
>gcc 2.3.3.  I can tell from posts in comp.os.solaris and gnu.gcc.bug
>that others have done this before, so I hope I am having an "old"
>problem.  Everything goes along fine until make reaches the file
>tree.c.  Then I get the following errors:
>make prefix=/opt/local/GNU CC=/opt/local/GNU/cygnus-sol2-1.0/bin/gcc LANGUAGE=c
>/opt/local/GNU/cygnus-sol2-1.0/bin/gcc -c  -DIN_GCC -DSVR4  -g     -I. -I. -I./config tree.c
>/usr/ccs/bin/as: "/tmp/cca001di.s", line 16160: error: can't compute value of an expression involving an external symbol
>/usr/ccs/bin/as: "/tmp/cca001di.s", line 16161: error: can't compute value of an expression involving an external symbol
>/usr/ccs/bin/as: "/tmp/cca001di.s", line 16163: error: can't compute value of an expression involving an external symbol
>... <continues similarly for another dozen lines or so>

cygnus-sol2-1.0 isn't exacttky 2.3.3, as far as I know.

This is a known bug in the early cygnus distributions.
You should remove the -g flag from the compile line.

as in:
make prefix=/opt/local/GNU CC=/opt/local/GNU/cygnus-sol2-1.0/bin/gcc \
        LANGUAGES=c CFLAGS=

BTW, I'd remove GNU as first. (It doesn't do PIC)

Casper

 
 
 

Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Post by Erik Wil » Sat, 16 Apr 1994 17:18:24




> >I am trying to compile gcc 2.5.8 on a Sun IPX under Solaris 2.3 using
> >gcc 2.3.3.  I can tell from posts in comp.os.solaris and gnu.gcc.bug
> >that others have done this before, so I hope I am having an "old"
> >problem.  Everything goes along fine until make reaches the file
> >tree.c.  Then I get the following errors:
> >make prefix=/opt/local/GNU CC=/opt/local/GNU/cygnus-sol2-1.0/bin/gcc LANGUAGE=c
> >/opt/local/GNU/cygnus-sol2-1.0/bin/gcc -c  -DIN_GCC -DSVR4  -g     -I. -I. -I./config tree.c
> >/usr/ccs/bin/as: "/tmp/cca001di.s", line 16160: error: can't compute value of an expression involving an external symbol
> >/usr/ccs/bin/as: "/tmp/cca001di.s", line 16161: error: can't compute value of an expression involving an external symbol
> >/usr/ccs/bin/as: "/tmp/cca001di.s", line 16163: error: can't compute value of an expression involving an external symbol
> >... <continues similarly for another dozen lines or so>
> cygnus-sol2-1.0 isn't exacttky 2.3.3, as far as I know.
> This is a known bug in the early cygnus distributions.
> You should remove the -g flag from the compile line.
> as in:
> make prefix=/opt/local/GNU CC=/opt/local/GNU/cygnus-sol2-1.0/bin/gcc \
>    LANGUAGES=c CFLAGS=

Hmmm. I just encountered the same (?) error compiling libg++-2.5.3 using a
freshly installed 2.5.8. After typing "make check" in the distribution's source
directory, the checks run fine for a while, then I get the following output:

cd ADT-examples; make check ...
gcc -c -g -O -nostdinc++ -I. -I../../../libio -I. -I./../../../libio
-I./../../src   generic-q.cc
gcc  generic-q.o -o generic-q ../../libg++.a
gcc -c -g -O -nostdinc++ -I. -I../../../libio -I. -I./../../../libio
-I./../../src   search.cc
gcc  search.o -o search ../../libg++.a
gcc -c -g -O -nostdinc++ -I. -I../../../libio -I. -I./../../../libio
-I./../../src   keyhash.cc
/usr/ccs/bin/as: "/usr/tmp/cca005Mw.s", line 1257: error: can't compute value
of an expression involving an external symbol
/usr/ccs/bin/as: "/usr/tmp/cca005Mw.s", line 1258: error: can't compute value
of an expression involving an external symbol
*** Error code 1
make: Fatal error: Command failed for target `keyhash.o'
Current working directory /opt/src/gnu/libg++-2.5.3/libg++/etc/ADT-examples
*** Error code 1
make: Fatal error: Command failed for target `subdir_do'
Current working directory /opt/src/gnu/libg++-2.5.3/libg++/etc
*** Error code 1
make: Fatal error: Command failed for target `check'
Current working directory /opt/src/gnu/libg++-2.5.3/libg++/etc
*** Error code 1
make: Fatal error: Command failed for target `subdir_do'
Current working directory /opt/src/gnu/libg++-2.5.3/libg++
*** Error code 1
make: Fatal error: Command failed for target `check'
Current working directory /opt/src/gnu/libg++-2.5.3/libg++
*** Error code 1
make: Fatal error: Command failed for target `check-libg++'
ktik3{root}[libg++-2.5.3]352>

Is this serious? I tend to ignore messages like these, which appear in the
optional check of software somewhere deep in the directory tree, but if it is a
sign for a bug in my compiler (I cannot try gas because I haven't installed it
yet), I should do something about it. Thanks for any suggestions,


 
 
 

Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Post by Casper H.S. D » Sat, 16 Apr 1994 20:35:49



>/usr/ccs/bin/as: "/usr/tmp/cca005Mw.s", line 1257: error: can't compute value
>of an expression involving an external symbol
>/usr/ccs/bin/as: "/usr/tmp/cca005Mw.s", line 1258: error: can't compute value
>of an expression involving an external symbol
>make: Fatal error: Command failed for target `check'
>Current working directory /opt/src/gnu/libg++-2.5.3/libg++
>*** Error code 1
>make: Fatal error: Command failed for target `check-libg++'
>ktik3{root}[libg++-2.5.3]352>
>Is this serious? I tend to ignore messages like these, which appear in the
>optional check of software somewhere deep in the directory tree, but if it is a
>sign for a bug in my compiler (I cannot try gas because I haven't installed it
>yet), I should do something about it. Thanks for any suggestions,

It's a bug in gcc 2.5.8.  A similar bug existed in early gcc releases
for Solaris but was much worse there.  Again, you can work around the
problem by removing -g from the compile command line.
Installing gas will not help, in I *strongly* recommend against it.
Gas does not support PIC code, installing gas will make it more difficult
to build shared libraries (you have to tell it to use /usr/ccs/bin/as).

Neitehr GNU as nor GNU ld add functionality in Solaris, instead you lose
functionality.  That is a good enough reason for me not to install them.

Casper

 
 
 

Help compiling gcc 2.5.8 w/Solaris 2.3 (SunOS 5.3)

Post by Adam W. Feig » Sun, 17 Apr 1994 17:10:41



Quote:>Neitehr GNU as nor GNU ld add functionality in Solaris, instead you lose
>functionality.  That is a good enough reason for me not to install them.
>Casper

Considering all the functionality we've lost already in ScumOS 5,
losing a bit more really makes little difference.

------------------------------------------------------------------------------

UUCP:{backbones}!iis!feigin         Network Systems Manager & *space Surfer
Mail: Integrated Systems Laboratory           Institute for Integrated Systems
      ETH-Zentrum                         Swiss Federal Institute of Technology
      CH-8092 Zurich                                   Zurich, Switzerland
      Switzerland      
Phone: +41 1 632 50 53                                  FAX: +41 1 252 09 94
                http://www.veryComputer.com/

"I'd like to donate my body to science after I die, but I'm afraid its
taken far too much of it already"

 
 
 

1. Migrating user information from SunOS 4 to Solaris 2.3 (SunOS 5.3

Has anyone come up with a relatively straightforward process for migrating
user (password and home directory) information from SunOS 4 (/etc files or
NIS maps) to Solaris 2.3 (NIS+)?  This process is proving to be a real
pain, and the manuals are so far from user-friendly that they might as well
be written in Japanese.

I've been able to import the /etc/passwd information using nisaddent.  This
doesn't seem to set up the passwords properly, though; running 'nispasswd'
explicitly on each user seems to be required before it's possible to log
in.

Once this has been done, logins seem to work fine on the NIS+ server or
client machines, but it's still not possible for a user to change his
password - nispasswd just says 'Sorry'.  So I went and added the user to
the credentials table with 'nisaddcred' (local and des entries), and now
nispasswd works.

Here's the process I've worked out so far:

        # cat old-passwd-file | nisaddent passwd
        [repeat the following lines for every user in the passwd file]
        # nispasswd user-name  
        # nisaddcred -p userid -P username.domain. local

All of these commands are documented in the NIS+ manual, but never all in
one place.  Surely there's a better way than this tedious procedure.

Once I've done this, I can't view the user information using admintool.
When I try to view a user in the User Account Manager window, I get the
error "Error code is 202, failure mode is CLEAN.  Error -2130640896
converting expiration date from internal format."  This suggests something
wrong the password expiration fields in the passwd table, but I would have
expected that NIS+ would have at least provided valid defaults.

Thanks for your help,
-Jason

=======================================================================

   CTP, Inc.   304 Vassar St.   Cambridge MA 02139     (617)374-8223
=======================================================================

2. Cable Modem (dhcp) with RedHat 6.0

3. Help with basic commands like 'system' on SunOs 5.3 (solaris 2.3)!!!

4. Question on NFS AIX to Linux

5. Help needed with perl 4.036 on SunOS 5.3 (solaris 2.3)

6. test

7. Help with Perl 4.036 on SunOS 5.3 (solaris 2.3)!!

8. FreeBSD-3.0 + SMP hardware info..

9. Help with basic commands like 'system' on SunOs 5.3 (solaris 2.3)!!

10. Q: max # processes (Solaris 2.3 / SunOS 5.3)

11. Patches to SunOS 5.3 (Solaris 2.3)

12. BSD remote printing environment Solaris 2.3/SunOS 5.3

13. SunOS 5.3 (Solaris 5.3) Patch Report