octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MXE compile and popen2


From: Rik
Subject: Re: MXE compile and popen2
Date: Fri, 20 May 2016 09:32:45 -0700

On 05/20/2016 07:01 AM, address@hidden wrote:
> Subject: > mingw cross complile fails for popen > From: > "JohnD" <address@hidden> > Date: > 05/20/2016 07:01 AM > To: > "'Octave Maintainers List'" <address@hidden> > List-Post: > <mailto:address@hidden> > Precedence: > list > MIME-Version: > 1.0 > Message-ID: > <address@hidden> > Content-Type: > multipart/alternative; boundary="----=_NextPart_000_0161_01D1B27E.949AA040" > Message: > 6 > > Not sure it its just me, but when cross compiling dev > >  > > hg heads > > changeset:   21751:b571fc85953f > > bookmark:    @ > > tag:         tip > > user:        Rik <address@hidden> > > date:        Thu May 19 18:48:52 2016 -0700 > > summary:     maint: Use two spaces after period to indicate sentence break. > >  > >  > > In file included from /home/johnd/mxe-octave/w32/tmp-default-octave/octave-4.1.0+/libinterp/corefcn/sysdep.h:33:0, > >                  from /home/johnd/mxe-octave/w32/tmp-default-octave/octave-4.1.0+/libinterp/corefcn/oct-procbuf.cc:38: > > /home/johnd/mxe-octave/w32/tmp-default-octave/octave-4.1.0+/liboctave/system/lo-sysdep.h:59:41: error: unable to deduce 'const auto' from 'octave::sys::popen2' > > const auto octave_popen2 = octave::sys::popen2; > >                                          ^ > > /home/johnd/mxe-octave/w32/tmp-default-octave/octave-4.1.0+/liboctave/system/lo-sysdep.h:59:12: warning: 'octave_popen2' defined but not used [-Wunused-variable] > >  > > /home/johnd/mxe-octave/w32/tmp-default-octave/octave-4.1.0+/libinterp/corefcn/oct-procbuf.cc:52:24: warning: 'octave_procbuf_list' defined but not used [-Wunused-variable] > > static octave_procbuf *octave_procbuf_list = 0; > >                         ^ > > Makefile:17184: recipe for target 'libinterp/corefcn/libinterp_corefcn_libcorefcn_la-oct-procbuf.lo' failed > > make[4]: *** [libinterp/corefcn/libinterp_corefcn_libcorefcn_la-oct-procbuf.lo] Error 1

5/20/16

John,

I can confirm this too.  The code for lo-sysdep.h is

-- lo-sysdep.h --
namespace octave
{
  namespace sys
  {
    extern std::string getcwd (void);

    extern int chdir (const std::string&);

#if defined (__WIN32__) && ! defined (__CYGWIN__)
    extern pid_t popen2 (const std::string&, const string_vector&,
                         bool, int *, std::string&);
#endif
  }
}

#if defined (OCTAVE_USE_DEPRECATED_FUNCTIONS)

OCTAVE_DEPRECATED ("use 'octave::sys::getcwd' instead")
const auto octave_getcwd = octave::sys::getcwd;

OCTAVE_DEPRECATED ("use 'octave::sys::chdir' instead")
const auto octave_chdir = octave::sys::chdir;

#if defined (__WIN32__) && ! defined (__CYGWIN__)
OCTAVE_DEPRECATED ("use 'octave::sys::popen2' instead")
const auto octave_popen2 = octave::sys::popen2;
#endif

#endif
-- END lo-sysdep.h

The code path that is failing is protected by #if blocks on __WIN32__ so it has probably not been exercised or tested before the MXE compile.

--Rik


reply via email to

[Prev in Thread] Current Thread [Next in Thread]