Subject: Re: sysutils/fam build failure on Solaris 9/sparc
To: Sageev George <sageev@usc.edu>
From: Sageev George <sageev@usc.edu>
List: tech-pkg
Date: 05/05/2004 18:47:15
On May 05, 2004, at 6:38 PM, Sageev George wrote:
> On April 21, 2004, at 8:06 AM, John D. Baker wrote:
> > Attempting to build sysutils/fam (a deeply-nested dependency of
> > graphics/gimp) fails as shown below:
> >
> > [...]
> > /bin/ksh ../libtool --mode=compile
>
g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../include -DFAM_CONF=\"/usr/pkg/etc/fam.
> conf\"  -I/usr/pkg/include -DNDEBUG  -O -I/usr/pkg/include -c -o Client.lo
> `test -f 'Client.c++' || echo './'`Client.c++
> > mkdir .libs
> >  g++ -DHAVE_CONFIG_H -I. -I.. -I../include
>
"-DFAM_CONF=\"/usr/pkg/etc/fam.conf\"" -I/usr/pkgsrc/sysutils/fam/work/.buil
> dlink/include -DNDEBUG -O -c Client.c++ -MT Client.lo -MD -MP -MF
> .deps/Client.TPlo  -fPIC -DPIC -o .libs/Client.o
> > In file included from
> /usr/pkg/gcc3/include/c++/3.3.3/backward/iostream.h:31,
> >                  from Client.c++:37:
> > /usr/pkg/gcc3/include/c++/3.3.3/backward/backward_warning.h:32:2:
warning:
> #warning This file includes at least one deprecated or antiquated header.
> Please consider using one of the 32 headers found in section 17.4.1.2 of
the
> C++ standard. Examples include substituting the <X> header for the <X.h>
> header for C++ includes, or <sstream> instead of the deprecated header
> <strstream.h>. To disable this warning use -Wno-deprecated.
> > Client.c++:42: error: type specifier omitted for parameter `u_int32_t'
> > Client.c++:42: error: parse error before `*' token
> [...]
> > Client.c++:132: error: parse error before numeric constant
> [...]
> > gmake[2]: *** [Client.lo] Error 1
> > gmake[2]: Leaving directory
`/usr/pkgsrc/sysutils/fam/work/fam-2.7.0/lib'
> > gmake[1]: *** [all-recursive] Error 1
> > gmake[1]: Leaving directory `/usr/pkgsrc/sysutils/fam/work/fam-2.7.0'
> > gmake: *** [all] Error 2
> > *** Error code 2
> >
> > Stop.
> > bmake: stopped in /usr/pkgsrc/sysutils/fam
> > [...]
> >
> [...]
>
> I ran into the same problem while trying to install gnome-terminal.
> The errors seemed to stem from two main problems:
> 1. On line 42, a data type u_int32_t is used that Solaris does not
> have in <sys/types.h>.  We do have uint32_t, and unsigned long,
> however, the latter of which I used in a typedef statement
> 2. On line 132, what I assume is either a reserved work, and a
> #define'd word, "sun", was used.  Replace that with dsun
>
> By doing #1 and #2, Client.c++ compiled.
>
> -Sageev
>

Sorry for the spelling errors in my above reply.  I just realized that
more changes need to be made to the files in the /usr/pkgsrc/sysutils/fam
directories (along the lines of the changes that I had mentioned).  If I
ever
get the whole thing to compile, I'll submit my changes via send-pr.

-Sageev