make error while installing on Solaris 10

Dmitry Kurochkin dmitry.kurochkin at measurement-factory.com
Thu Jun 16 14:41:51 UTC 2011


Hi Jawahar.

On Thu, 16 Jun 2011 09:51:19 -0400, "Jawahar Balakrishnan (JB)" <jbalakri at gmail.com> wrote:
> Sorry I am getting a different error. I started testing on a brand new server
> 

Is it Solaris 10 or a new system?

Do you get the previous errors on the new system?

> g++ -DHAVE_CONFIG_H   -I../.. -I../../src -I../.. -I../../src   -g -O3
> -Wall -Ww
>                                              rite-strings
> -Woverloaded-virtual -MT PolyApp.o -MD -MP -MF .deps/PolyApp.Tpo -c
> 
>                                  -o PolyApp.o PolyApp.cc
> /usr/include/net/if.h:99: error: template argument required for âstruct mapâ
> make[3]: *** [PolyApp.o] Error 1
> make[3]: Leaving directory
> `/export/data/home/jawahar/install/polygraph/polygraph-4.3.2/src/app'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory
> `/export/data/home/jawahar/install/polygraph/polygraph-4.3.2/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory
> `/export/data/home/jawahar/install/polygraph/polygraph-4.3.2'
> make: *** [all] Error 2
> 

Solaris declares/refers common names like map in /usr/include/net/if.h
and queue in /usr/include/sys/stream.h.  These conflict with C++ STL.
Looks like the only option to fix this is to get rid of "using namespace
std".

I am afraid I am not able to provide you a quick fix for this one.  I
have added comments to the Launchpad bug #794650 [1].  Let's move
further discussion on these issues to the Launchpad, if you do not mind.

Regards,
  Dmitry

[1] https://bugs.launchpad.net/polygraph/+bug/794650

> 
> On Tue, Jun 14, 2011 at 1:04 PM, Jawahar Balakrishnan (JB)
> <jbalakri at gmail.com> wrote:
> > I did try the --with-zlib=/usr/local and it does says it finds it but
> > then it complains about not having the gzip compression feature...I'll
> > try the patch now.
> >
> > On Tue, Jun 14, 2011 at 12:52 PM, Dmitry Kurochkin
> > <dmitry.kurochkin at measurement-factory.com> wrote:
> >> Hi Jawahar.
> >>
> >> On Tue, 14 Jun 2011 11:53:18 -0400, "Jawahar Balakrishnan (JB)" <jbalakri at gmail.com> wrote:
> >>> Dmitry
> >>>
> >>> I installed gcc 4.4.2 and am trying to install polygraph and i got the
> >>> following 2 errors
> >>>
> >>> 1) it complains about not finding zlin 1.2.0.4 or later but have 1.2.5 installed
> >>>
> >>
> >> Is it installed in non-standard path (i.e. not in /usr)?  If this is the
> >> case, try configure --with-zlib=/path/to/zlib.  This path should have
> >> zlib headers (in include/) and library (in lib/).
> >>
> >>> 2) so i tried  with the -without-zlib option and then i get this error
> >>>
> >>> In file included from ZLib.cc:9:0:
> >>> ../../src/xstd/ZLib.h:14:29: warning: 'typedef' was ignored in this declaration
> >>> mv -f .deps/ZLib.Tpo .deps/ZLib.Po
> >>> g++ -DHAVE_CONFIG_H   -I../.. -I../../src -I../.. -I../../src   -g -O3
> >>> -Wall -Wwrite-strings -Woverloaded-virtual -MT gadgets.o -MD -MP -MF
> >>> .deps/gadgets.Tpo -c -o gadgets.o gadgets.cc
> >>> gadgets.cc: In function 'double xceil(double, double)':
> >>> gadgets.cc:32:41: error: 'ceilf' was not declared in this scope
> >>> gadgets.cc:47:1: warning: control reaches end of non-void function
> >>> make[3]: *** [gadgets.o] Error 1
> >>> make[3]: Leaving directory
> >>> `/export/home/jawahar/install/polygraph/polygraph-4.3.2/src/xstd'
> >>> make[2]: *** [all-recursive] Error 1
> >>> make[2]: Leaving directory
> >>> `/export/home/jawahar/install/polygraph/polygraph-4.3.2/src'
> >>> make[1]: *** [all-recursive] Error 1
> >>> make[1]: Leaving directory
> >>> `/export/home/jawahar/install/polygraph/polygraph-4.3.2'
> >>> make: *** [all] Error 2
> >>>
> >>> Any thoughts?
> >>>
> >>
> >> Polygraph checks if ceilf(3) is available on the system.  Apparently,
> >> Solaris has ceilf(3) implemented (that is why the configure check
> >> succeeds), but does not declare it in math.h.  Attached patch is a
> >> workaround to avoid ceilf(3) usage.
> >>
> >> Regards,
> >>  Dmitry
> >>
> >>> JB
> >>>
> >>>
> >>>
> >>> On Wed, Jun 8, 2011 at 2:21 PM, Jawahar Balakrishnan (JB)
> >>> <jbalakri at gmail.com> wrote:
> >>> > I am using version 4.4.2 from sunfreeware.com.. let me see if i can
> >>> > build the latest version...
> >>> >
> >>> > On Wed, Jun 8, 2011 at 1:58 PM, Dmitry Kurochkin
> >>> > <dmitry.kurochkin at measurement-factory.com> wrote:
> >>> >> On Wed, 8 Jun 2011 13:39:08 -0400, "Jawahar Balakrishnan (JB)" <jbalakri at gmail.com> wrote:
> >>> >>> Dmitry
> >>> >>>
> >>> >>> Thanks for the suggestion. The build went further than before but I am
> >>> >>> getting a different error..
> >>> >>>
> >>> >>> init2.c:37:  assertion failed: ((64 - 0)+0) == (((64 - 0)+0)/8) * 8 &&
> >>> >>> sizeof(mp_limb_t) == (((64 - 0)+0)/8)
> >>> >>> In file included from rndDistrs.cc:11:
> >>> >>> ../../src/xstd/rndDistrs.h: In member function âvirtual double
> >>> >>> UnifDistr::sdev() constâ:
> >>> >>> ../../src/xstd/rndDistrs.h:38: internal compiler error: Abort
> >>> >>> Please submit a full bug report,
> >>> >>> with preprocessed source if appropriate.
> >>> >>> See <http://gcc.gnu.org/bugs.html> for instructions.
> >>> >>> make[3]: *** [rndDistrs.o] Error 1
> >>> >>> make[3]: Leaving directory
> >>> >>> `/export/data/home/jawahar/install/webpolygraph/polygraph-4.3.2/src/xstd'
> >>> >>> make[2]: *** [all-recursive] Error 1
> >>> >>> make[2]: Leaving directory
> >>> >>> `/export/data/home/jawahar/install/webpolygraph/polygraph-4.3.2/src'
> >>> >>> make[1]: *** [all-recursive] Error 1
> >>> >>> make[1]: Leaving directory
> >>> >>> `/export/data/home/jawahar/install/webpolygraph/polygraph-4.3.2'
> >>> >>> make: *** [all] Error 2
> >>> >>>
> >>> >>> Any thoughts?
> >>> >>
> >>> >> This is a gcc bug.  I do not think I saw this problem on any gcc version
> >>> >> I tried.  Are you using an unstable gcc version?  Updating gcc should
> >>> >> help.
> >>> >>
> >>> >> Regards,
> >>> >>  Dmitry
> >>> >>
> >>> >>> Thanks
> >>> >>> JB
> >>> >>>
> >>> >>>
> >>> >>>
> >>> >>> On Wed, Jun 8, 2011 at 12:29 PM, Dmitry Kurochkin
> >>> >>> <dmitry.kurochkin at measurement-factory.com> wrote:
> >>> >>> > Hi Jawahar.
> >>> >>> >
> >>> >>> > On Mon, 6 Jun 2011 12:03:55 -0400, "Jawahar Balakrishnan (JB)" <jbalakri at gmail.com> wrote:
> >>> >>> >> I tried version 4.3.2 and 4.0.11 but i get the same error when i
> >>> >>> >> execute make. Any ideas/thoughts will be appreciated.
> >>> >>> >>
> >>> >>> >
> >>> >>> > The errors are in code related to IPv6 network aliases creation.
> >>> >>> > Unfortunately, there is no portable API for this stuff and there is no
> >>> >>> > Solaris support in Polygraph (our primary platforms are Linux and
> >>> >>> > FreeBSD).  As a quick hack, you may try commenting out the following
> >>> >>> > define in src/xstd/InetIfReq.h:
> >>> >>> >
> >>> >>> >  // Assume we are on Linux if here
> >>> >>> >  #define HAVE_TYPE_LINUX_IN6_IFREQ 1
> >>> >>> >
> >>> >>> > This hack should work for you as long as you do not use IPv6 aliases.
> >>> >>> > Hopefully, the rest of the code would build fine.
> >>> >>> >
> >>> >>> > I opened bug #794650 [1] on Launchpad to track Solaris build issues.
> >>> >>> >
> >>> >>> > Regards,
> >>> >>> >  Dmitry
> >>> >>> >
> >>> >>> > [1] https://bugs.launchpad.net/polygraph/+bug/794650
> >>> >>> >
> >>> >>> >> InetIfReq.cc: In constructor âInet6IfAliasReq::Inet6IfAliasReq(const
> >>> >>> >> String&, const InAddress&, const InAddress&)â:
> >>> >>> >> InetIfReq.cc:38: error: âSIOCGIFINDEXâ was not declared in this scope
> >>> >>> >> InetIfReq.cc:40: error: âstruct ifreqâ has no member named âifr_ifindexâ
> >>> >>> >> make[3]: *** [InetIfReq.o] Error 1
> >>> >>> >>
> >>> >>> >> Thanks
> >>> >>> >> JB
> >>> >>> >> _______________________________________________
> >>> >>> >> Users mailing list
> >>> >>> >> Users at web-polygraph.org
> >>> >>> >> http://www.web-polygraph.org/mailman/listinfo/users
> >>> >>> >
> >>> >>
> >>> >
> >>
> >



More information about the Users mailing list