octave-maintainers
[Top][All Lists]
Advanced

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

Re: Building PyTave on windows - cygwin


From: Mike Miller
Subject: Re: Building PyTave on windows - cygwin
Date: Mon, 27 Jun 2016 15:13:35 -0700
User-agent: Mutt/1.6.0 (2016-04-01)

On Tue, Jun 28, 2016 at 02:03:19 +0530, Abhinav Tripathi wrote:
> Hi,
> I was resuming trying to build pytave on windows. As suggested by Tatsuro,
> I built 32 bit binaries for boost and just used Python27 downloaded from
> official python site.
> After some tweaking (thanks to the config logs) I finally got to the last
> step of ./configure.
> I am getting the error that *linking to octave failed*...
> I have export LDFLAGS='-L/e/boost_1_61_0/stage/lib -L/e/octave_dev/lib32
> -L/e/octave_dev/lib/octave/4.1.0+'
> I tried exporting /e/octave_dev/lib but it gave errors so I exported
> /e/octave_dev/lib32 instead... It solved some problems but still I get some
> errors regarding undefined references!
> .
> In /e/octave_dev/lib/octave/4.1.0+ there are 3 files ending in '.dll.a'...
> I even copied them and renamed the copies to end in '*.a' instead of
> '*.dll.a' but still the same error.
> The log says:
> -----------------------------------------------------------------------------------------------------------------------------------------
> configure:5260: g++ -std=gnu++11 -o conftest.exe -g -O2
> -IE:\octave_dev\include\octave-4.1.0+
> -IE:\octave_dev\include\octave-4.1.0+/octave -I/e/boost_1_61_0
> -I/e/octave_dev/include/octave-4.1.0+
> -I/e/octave_dev/include/octave-4.1.0+/octave
> -LE:\octave_dev\lib\octave\4.1.0+ -L/e/boost_1_61_0/stage/lib
> -L/e/octave_dev/lib32 -L/e/octave_dev/lib/octave/4.1.0+ conftest.cpp
> -loctinterp -loctave  >&5
> C:\Users\ABHINA~1\AppData\Local\Temp\ccDCXdjd.o: In function `main':
> e:\My_Repos\pytave/conftest.cpp:15: undefined reference to
> `MatrixType::MatrixType()'
> e:\My_Repos\pytave/conftest.cpp:15: undefined reference to
> `MatrixType::~MatrixType()'
> collect2.exe: error: ld returned 1 exit status
> configure:5260: $? = 1
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME "pytave"
> | #define PACKAGE_TARNAME "pytave"
> | #define PACKAGE_VERSION "dev"
> | #define PACKAGE_STRING "pytave dev"
> | #define PACKAGE_BUGREPORT "https://bitbucket.org/mtmiller/pytave/issues";
> | #define PACKAGE_URL ""
> | /* end confdefs.h.  */
> | #include <octave/oct.h>
> | #include <octave/Matrix.h>
> | int
> | main ()
> | {
> | MatrixType()
> |   ;
> |   return 0;
> | }
> configure:5280: result: no
> configure:5303: WARNING:
> ========================================================================
> Can not link with Octave.
> 
> Make sure the Octave development package is installed.
> ========================================================================
> configure:5339: error: in `/e/My_Repos/pytave':
> configure:5341: error: unable to find Octave development files
> 
> -----------------------------------------------------------------------------------------------------------------------------------------
> .
> .
> What libraries do I need to build the above program?

The MatrixType constructor and destructor should be defined in
liboctave, which is on the displayed command-line above.

I've lost track of whether octave_dev was built with --enable-windows-64
or not, and I don't know what the lib32 directory is. I also don't know
how .dll.a and .dll libraries interact on Windows.

Can you try copying that test program and building it in some temporary
directory with

  /e/octave_dev/bin/mkoctfile --link-stand-alone --verbose foo.cc

?

-- 
mike



reply via email to

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