octave-maintainers
[Top][All Lists]
Advanced

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

Re: Octave/Win32 update


From: Benjamin Lindner
Subject: Re: Octave/Win32 update
Date: Tue, 30 Jan 2007 18:26:42 +0100

> Benjamin Lindner wrote:
> >> A new version of octave for Win32 has been made available, see
> >> http://www.dbateman.org/?page=octave&lang=EN
> > 
> > I have downloaded and installed the octave package, along with msvc8 and
> microsoft sdk.
> > When I try to compile the hello.cc from the /example directory in the
> source code I get the follwing error message:
> > 
> > C:\programs\Octave\bin> mkoctfile c:\temp\hello.cc
> > hello.cc
> > c:\programs\octave\include\octave-2.9.9+\octave\ov.h(34) : fatal error
> C1083: Cannot open include file: 'hdf5.h': No such file or directory
> > LINK : fatal error LNK1181: cannot open input file 'c:\temp\hello.o'
> > 
> > searching the installation tree yields that there is no hdf5.h header,
> also no fftw header files.
> > Aren't these headers supposed to be present, or am I missing something
> here? Does one need to install additional packaegs to be able to compile oct
> files?
> > 
> > benjamin
> 
> Ouch... That's a pretty silly dependency.. I can see why it is there, as
> "hid_t" must be defined for the save_hdf5 and load_hdf5 functions.. I'd
> be inclined to remove the include of hdf5.h and replace it with
> 
> typedef int hid_t;
> 
> Can you try editing c:\programs\octave\include\octave-2.9.9+\octave\ov.h
> and do that? John what change do you want to make to support this, or do
> you want to require that HDF5 development files are installed to build
> oct-files?

Ok, I tried this:

I applied the following changes to ov.h and ov-base.h
--- ov.h        2007-01-30 17:28:49.276678400 +0100
+++ ov.h.orig   2007-01-30 17:28:31.591248000 +0100
@@ -31,8 +31,7 @@
 #include <list>
 
 #if defined (HAVE_HDF5)
-/*#include <hdf5.h>*/
-typedef int hid_t;
+#include <hdf5.h>
 #endif
 
 #include "Range.h"

--- ov-base.h   2007-01-30 17:38:00.419182400 +0100
+++ ov-base.h.orig      2007-01-30 17:37:44.526329600 +0100
@@ -31,8 +31,7 @@
 #include <string>
 
 #if defined (HAVE_HDF5)
-/*#include <hdf5.h>*/
-typedef int hid_t;
+#include <hdf5.h>
 #endif
 
 #include "Range.h"

and run mkoctfile, but end up with a different error message

C:\programs\Octave\bin> mkoctfile -v c:\temp\hello.cc
cc-msvc -d -c -I.   -IC:\programs\Octave\include\octave-2.9.9+ 
-IC:\programs\Octave\include\octave-2.9.9+\octave -IC:\programs\Octave\include  
-O2 -EHs -MD    c:\temp\hello.cc -o c:\temp\hello.o
cl -nologo -c -I. -IC:\programs\Octave\include\octave-2.9.9+ 
-IC:\programs\Octave\include\octave-2.9.9+\octave -IC:\programs\Octave\include 
-O2 -EHs -MD -Tpc:\temp\hello.cc -Foc:\temp\hello.o
hello.cc
cc-msvc -shared -g  -o c:\temp.oct  c:\temp\hello.o  
-LC:\programs\Octave\lib\octave-2.9.9+ -loctinterp -loctave  -lcruft  -llapack 
-lblas -lfftw3 -lreadline -lhdf5 -lzlib  -lws2_32 -lkernel32 -lf2c -lkernel32
LINK : fatal error LNK1104: cannot open file 'lapack.lib'

Searching the installation tree yields only the following .lib files:
cruft.lib
octave.lib
octave_fixed.lib
octinterp.lib

So I guess not only lapack.lib is missing but probably also the other libaries 
listed as arguments to cc-msvc (fftw3, blas, hdf5, zlib, f2c)

Extrapolating a bit I guess that the header file fftw.h is also missing, since 
oct-fftw.h contains a #include <fftw3.h> statement, although I have not yet 
tried compiling an oct file containing calls to fft().

benjamin

-- 
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! 
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer


reply via email to

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