Problems Installing Top

I've been trying to install Top on our Solaris box but it's giving me some trouble.

The uname -a command shows

SunOS servername 5.9 Generic sun4u sparc SUNW,Ultra-250

I downloaded Top form www.unixtop.com.

On the initial install I got errors because I didn't have a C compiler installed.

So I downloaded GCC from Sunfree and also downloaded the libiconv library as the site suggested.

I used pkgadd to install both of these.

When I try to configure Top after these packages had been installed, i.e. try to do "make" or "make install" I get the following error messages...

We are done with the questions.
Saving configuration...
Building Makefile...
Building top.local.h...
Building top.1...
Doing a "make clean".
rm -f .o top core core. sigdesc.h
To create the executable, type "make".
To install the executable, type "make install".
# make
/usr/local/bin/gcc -DHAVE_GETOPT -DORDER -DHAVE_STRERROR -DUSE_SIZE_T -c top.c
In file included from /usr/include/sys/time.h:418,
from /usr/include/sys/select.h:20,
from /usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/types.h:291,
from os.h:1,
from top.c:34:
/usr/include/time.h:111: error: parse error before "pthread_attr_t"
/usr/include/time.h:113: error: parse error before '}' token
In file included from /usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/signal.h:127,
from /usr/include/signal.h:27,
from top.c:35:
/usr/include/sys/siginfo.h:284: error: parse error before "int32_t"
/usr/include/sys/siginfo.h:286: error: parse error before '}' token
/usr/include/sys/siginfo.h:288: error: parse error before '}' token
/usr/include/sys/siginfo.h:415: error: parse error before "int32_t"
/usr/include/sys/siginfo.h:416: error: conflicting types for '__rctl'
/usr/include/sys/siginfo.h:285: error: previous declaration of '__rctl' was here
/usr/include/sys/siginfo.h:418: error: parse error before '}' token
/usr/include/sys/siginfo.h:420: error: parse error before '}' token
/usr/include/sys/siginfo.h:424: error: parse error before "k_siginfo_t"
/usr/include/sys/siginfo.h:428: error: parse error before '}' token
In file included from /usr/include/signal.h:27,
from top.c:35:
/usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/signal.h:160: error: parse error before "siginfo_t"
In file included from top.c:35:
/usr/include/signal.h:103: error: parse error before "int"
/usr/include/signal.h:105: error: parse error before "siginfo_t"
/usr/include/signal.h:106: error: parse error before "siginfo_t"
*** Error code 1
make: Fatal error: Command failed for target `top.o'
# make install
/usr/local/bin/gcc -DHAVE_GETOPT -DORDER -DHAVE_STRERROR -DUSE_SIZE_T -c top.c
In file included from /usr/include/sys/time.h:418,
from /usr/include/sys/select.h:20,
from /usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/types.h:291,
from os.h:1,
from top.c:34:
/usr/include/time.h:111: error: parse error before "pthread_attr_t"
/usr/include/time.h:113: error: parse error before '}' token
In file included from /usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/signal.h:127,
from /usr/include/signal.h:27,
from top.c:35:
/usr/include/sys/siginfo.h:284: error: parse error before "int32_t"
/usr/include/sys/siginfo.h:286: error: parse error before '}' token
/usr/include/sys/siginfo.h:288: error: parse error before '}' token
/usr/include/sys/siginfo.h:415: error: parse error before "int32_t"
/usr/include/sys/siginfo.h:416: error: conflicting types for '__rctl'
/usr/include/sys/siginfo.h:285: error: previous declaration of '__rctl' was here
/usr/include/sys/siginfo.h:418: error: parse error before '}' token
/usr/include/sys/siginfo.h:420: error: parse error before '}' token
/usr/include/sys/siginfo.h:424: error: parse error before "k_siginfo_t"
/usr/include/sys/siginfo.h:428: error: parse error before '}' token
In file included from /usr/include/signal.h:27,
from top.c:35:
/usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/signal.h:160: error: parse error before "siginfo_t"
In file included from top.c:35:
/usr/include/signal.h:103: error: parse error before "int"
/usr/include/signal.h:105: error: parse error before "siginfo_t"
/usr/include/signal.h:106: error: parse error before "siginfo_t"
*** Error code 1
make: Fatal error: Command failed for target `top.o'

Any ideas on what the problem here is?

What am I missing?

Any help would be greatly appreciated.

EDIT:

Can anyone tell me why its looking for top.o when it has clearly deleted all files ending with that extension i.e.

Doing a "make clean".
rm -f .o top core core. sigdesc.h

I have done a find from root on all files ending in a .o extension and there is no top.o ...

Curious eh?

Sl�n.

Building a top.o is the operation that "make" was attempting when errors occurred. It knows there is no top.o. That is what it is complaining about. Somehow you have the wrong gcc. Here are two lines that you posted:

SunOS servername 5.9 Generic sun4u sparc SUNW,Ultra-250
from /usr/local/lib/gcc/sparc-sun-solaris2.5.1/3.4.2/include/sys/types.h:291,

You are using 5.9 but your gcc is designed for 2.5.1. What is Sunfree? You should use www.sunfreeware.com and you should simply download a 5.9 version of top from that site.

Exact link:
http://www.sunfreeware.com/programlistsparc9.html\#top

Yes I realised that..

I downloaded the compiled version from sunfreeware in the end and all was well.

Cheers,