octave-maintainers
[Top][All Lists]
Advanced

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

Re: Building pytave on windows


From: Abhinav Tripathi
Subject: Re: Building pytave on windows
Date: Tue, 9 May 2017 15:33:54 +0530

Extremely sorry for the incomplete mail.. I'll complete it here.

On Tue, May 9, 2017 at 3:24 PM, Abhinav Tripathi <address@hidden> wrote:
Hi,
Mike has successfully removed all the boost dependencies from pytave and we are trying to build it on windows (again)...
.
Reading through our earlier conver

Reading through earlier conversations on the mailing list, I have reached upto a point.. And now I am getting the following error:
----------------------------------------------------------------------------------------------------------
bash-3.1$ make
make  all-am
make[1]: Entering directory `/d/repos/pytave'
/bin/sh ./libtool  --tag=CXX   --mode=compile g++ -std=gnu++11 -DHAVE_CONFIG_H -I.  -IC:\Octave\Octave-4.2.0\include\octave-4.2.0 -IC:\Octave\Octave-4.2.0\include\octave-4.2.0/octave -Ic:\Python36\include -IC:/Python36/include -IC:/Octave/Octave-4.2.0/include/octave-4.2.0 -IC:/Octave/Octave-4.2.0/include/octave-4.2.0/octave -IC:/Python36/Lib/site-packages/numpy/core/include -W -Wall -g -O2 -MT liboctpython_la-oct-py-error.lo -MD -MP -MF .deps/liboctpython_la-oct-py-error.Tpo -c -o liboctpython_la-oct-py-error.lo `test -f 'oct-py-error.cc' || echo './'`oct-py-error.cc
libtool: compile:  g++ -std=gnu++11 -DHAVE_CONFIG_H -I. -IC:OctaveOctave-4.2.0includeoctave-4.2.0 -IC:OctaveOctave-4.2.0includeoctave-4.2.0/octave -Ic:Python36include -IC:/Python36/include -IC:/Octave/Octave-4.2.0/include/octave-4.2.0 -IC:/Octave/Octave-4.2.0/include/octave-4.2.0/octave -IC:/Python36/Lib/site-packages/numpy/core/include -W -Wall -g -O2 -MT liboctpython_la-oct-py-error.lo -MD -MP -MF .deps/liboctpython_la-oct-py-error.Tpo -c oct-py-error.cc  -DDLL_EXPORT -DPIC -o .libs/liboctpython_la-oct-py-error.o
In file included from c:\octave\octave-4.2.0\lib\gcc\x86_64-w64-mingw32\4.9.4\include\c++\complex:44:0,
                 from oct-py-types.h:27,
                 from oct-py-error.cc:33:
c:\octave\octave-4.2.0\lib\gcc\x86_64-w64-mingw32\4.9.4\include\c++\cmath:1123:11: error: '::hypot' has not been declared
   using ::hypot;
           ^
make[1]: *** [liboctpython_la-oct-py-error.lo] Error 1
make[1]: Leaving directory `/d/repos/pytave'
make: *** [all] Error 2
----------------------------------------------------------------------------------------------------------

Earlier, to get through this tatsuro had commented out a few lines in the cmath include file itself. But, if we want to actually do a build then, I think, we should not temper with the inbuilt library files.
Does anyone have any idea on how to get through this error without editing the cmath library? Or what could be the potential cause of this?
.
.
If anyone is interested, I did the following to get this far:
----------------------------------------------------------------------------------------------------------
Install Python3.6 in C:\Python36
Install numpy
Install octave 4.2.0 in C:\Octave
Install msys64 in C:\msys64
Update msys packages. Install devel packages.
Clone pytave in D:\repos\pytave

in msys shell run 'autoreconf --install' to get configure executable for pytave
Running autoreconf in octave's bash shell always errored out, that's why I ran it in msys.

open octave-cli.exe and run 'system bash' and 'cd /d/repos/pytave'

export PATH=$PATH:/c/msys64/usr/bin:/c/Python36:/c/Python36/scripts

export CPPFLAGS='-IC:/Python36/include -IC:/Octave/Octave-4.2.0/include/octave-4.2.0 -IC:/Octave/Octave-4.2.0/include/octave-4.2.0/octave -IC:/Python36/Lib/site-packages/numpy/core/include'

export LDFLAGS='-Wl,--enable-auto-import -Wl,-export-all-symbols -LC:/Python36/libs -LC:/Octave/Octave-4.2.0/lib -LC:/Octave/Octave-4.2.0/lib/octave/4.2.0'

To get around python extra libs problem, do "export PYTHON_EXTRA_LIBS=-g" as suggested by Mike earlier

Then run './configure LIBS='-LC:/Python36/libs' which ends with:
Pytave is now configured for the following

  Octave header files:  C:\Octave\Octave-4.2.0\include\octave-4.2.0
  Octave libraries:     C:\Octave\Octave-4.2.0\lib\octave\4.2.0
  Python header files:  -Ic:\Python36\include
  Python library:       -Rc:\Python36\Lib\config -Lc:\Python36\Lib\config -lpython36
  Python executable:    /c/Python36//python

Now run 'make' which errs out.
----------------------------------------------------------------------------------------------------------
.
.
Regards,
Abhinav

reply via email to

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