[reSIProcate] QNX build

Derek MacDonald derek at xten.com
Fri Sep 2 17:26:49 CDT 2005


Sounds like a compiler limitation; try building a simpliefed case like:

//in the h
class Foo
{
   public:
      class Bar()
      {
        public:
         //stuff
         int k;
      };
      std::auto_ptr<Bar> mBar;
      
      static Bar& getStaticCodecs();
};

//in the cxx
Bar& Foo::getStaticCodecs()
{
   mBar = std::auto_ptr<Foo>(new Foo);
}

std::auto_ptr<Foo> mBar;


Just thought of one thing to try: move std::auto_ptr<Codec::CodecMap>
Codec::sStaticCodecs; above the function that uses it; it is below in
SdpContents.cxx.

--Derek

CONFIDENTIALITY NOTICE

This email and any files transmitted with it contains proprietary
information and, unless expressly stated otherwise, all contents and
attachments are confidential. This email is intended for the addressee(s)
only and access by anyone else is unauthorized. If you are not an addressee,
any disclosure, distribution, printing or copying of the contents of this
email or its attachments, or any action taken in reliance on it, is
unauthorized and may be unlawful. If you are not an addressee, please inform
the sender immediately and then delete this email and any copies of it.
Thank you for your co-operation.


> -----Original Message-----
> From: resiprocate-devel-bounces at list.sipfoundry.org [mailto:resiprocate-
> devel-bounces at list.sipfoundry.org] On Behalf Of Amar Singh
> Sent: Friday, September 02, 2005 3:04 PM
> To: Jason Fischl
> Cc: resiprocate-devel at list.sipfoundry.org
> Subject: RE: [reSIProcate] QNX build
> 
> Hi Jason,
> 
> i took the latest main from sebversion and again got stuck on similar
> error. I am copying below. Do we know what is the reason for this type of
> error.
> 
> ppc-g++ -D_REENTRANT   -g  -Wall -I../../       -
> I../../build/../contrib/ares -I
> -I -I/opt/qnx630/target/qnx6/usr/include -DUSE_ARES -c -o
> obj.debug.Linux.x86_64
> /SdpContents.o SdpContents.cxx
> SdpContents.cxx: In function `static class
> std::map<int,resip::SdpContents::Sess
> ion::Codec,std::less<int>,std::allocator<std::pair<const
> int,resip::SdpContents:
> :Session::Codec> > > &
> resip::SdpContents::Session::Codec::getStaticCodecs()':
> SdpContents.cxx:1744: initialization of non-const reference type `class
> std::aut
> o_ptr<std::map<int,resip::SdpContents::Session::Codec,std::less<int>,std::
> alloca
> tor<std::pair<const int,resip::SdpContents::Session::Codec> > > > &'
> SdpContents.cxx:1744: from rvalue of type
> `std::auto_ptr<std::map<int,resip::Sdp
> Contents::Session::Codec,std::less<int>,std::allocator<std::pair<const
> int,resip
> ::SdpContents::Session::Codec> > > >'
> /opt/qnx630/target/qnx6/usr/include/cpp/memory:503: in passing argument 1
> of `st
> d::auto_ptr<std::map<int,resip::SdpContents::Session::Codec,std::less<int>
> ,std::
> allocator<std::pair<const int,resip::SdpContents::Session::Codec> > >
> >::operato
> r
> =(std::auto_ptr<std::map<int,resip::SdpContents::Session::Codec,std::less<
> int>
> ,std::allocator<std::pair<const int,resip::SdpContents::Session::Codec> >
> > > &)
> '
> cc: /opt/qnx630/host/linux/x86/usr/lib/gcc-lib/ntox86/2.95.3/cc1plus error
> 33
> make: *** [obj.debug.Linux.x86_64/SdpContents.o] Error 1
> 
> Regards
> amar
> 
> 
> 
> -----Original Message-----
> From: jason.fischl at gmail.com [mailto:jason.fischl at gmail.com]On Behalf Of
> Jason Fischl
> Sent: Friday, September 02, 2005 11:46 AM
> To: Amar Singh
> Cc: resiprocate-devel at list.sipfoundry.org
> Subject: Re: [reSIProcate] QNX build
> 
> 
> Are you able to work off of the main version in the subversion
> repository? These issues have been resolved.
> 
> 
> On 9/2/05, Amar Singh <amar.singh at behere.com> wrote:
> > Hi Jason,
> >
> > i am using resiprocate-0.9.0-5019.
> >
> > resiprocate-0.9.0-5019/resiprocate/Makefile has multiple entries for
> Registration.lo, Registration.cxx ...
> > so rather than removing Registration.cxx from build i commented out the
> line which was causing problem. Now i am able to build libresiprocate.a,
> but getting similar errors in DUM. I am copying below.
> >
> >  ppc-g++ -DHAVE_CONFIG_H -I. -I. -I../../resiprocate -I../.. -I../.. -I
> /opt/qnx
> > 630/target/qnx6/usr/include -I/home/amars/sip/sipfoundry/resiprocate-
> 0.9.0-5019/
> > contrib/ares -g -O2 -Wall -Wno-deprecated -c ClientInviteSession.cxx -
> Wp,-MD,.de
> > ps/ClientInviteSession.TPlo -o ClientInviteSession.o
> > ClientInviteSession.cxx: In method
> `resip::ClientInviteSession::ClientInviteSess
> > ion(resip::DialogUsageManager &, resip::Dialog &, const
> resip::SipMessage &, con
> > st resip::SdpContents *, resip::Handle<resip::ServerSubscription> =
> Handle<resip
> > ::ServerSubscription>())':
> > ClientInviteSession.cxx:32: initialization of non-const reference type
> `class st
> > d::auto_ptr<resip::SdpContents> &'
> > ClientInviteSession.cxx:32: from rvalue of type
> `std::auto_ptr<resip::SdpContent
> > s>'
> > /opt/qnx630/target/qnx6/usr/include/cpp/memory:503: in passing argument
> 1 of `st
> > d::auto_ptr<resip::SdpContents>::operator
> =(std::auto_ptr<resip::SdpContents> &)
> > '
> >
> > Regards
> > amar
> >
> >
> > -----Original Message-----
> > From: jason.fischl at gmail.com [mailto:jason.fischl at gmail.com]On Behalf Of
> > Jason Fischl
> > Sent: Friday, September 02, 2005 10:24 AM
> > To: Amar Singh
> > Cc: resiprocate-devel at list.sipfoundry.org
> > Subject: Re: [reSIProcate] QNX build
> >
> >
> > On 9/2/05, Amar Singh <amar.singh at behere.com> wrote:
> > > while attempting to compile resiprocate for QNX i am getting following
> error. something wrong with auto_ptr. has anyone seen this problem and
> what is the solution.
> > >
> > You can remove Registration.cxx from the build. It is no longer
> > needed. What version of resiprocate are you building?
> >
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel at list.sipfoundry.org
> https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel





More information about the resiprocate-devel mailing list