|
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 |
[Prev in Thread] | Current Thread | [Next in Thread] |