Dear Orion,

Unfortunatelty, octcdf does not work with octave version 3.2.x. To
make octcdf work in the current version of octave, it would require
changes in octave and not in octcdf. Those changes have been made in
the developpement version of octave (3.3.x), but not in the current
stable version.

You might be able to compile octcdf, but you will get errors like
those when you use octcdf:
http://octave.1599824.n4.nabble.com/writing-ncdf-file-with-octcdf-td1638011.html

Concerning your patch:
In octave 3.3.x, ArrayN<T> has been deprecated (and Array<T> should be
used instead).

I would love to see octcdf to work again with the current stable
version of octave. But this would require a new stable octave release
which is not under my control.

But anyway, thank you for your efforts in maintaining the octave-forge
packages in Fedora!

Alex


On Sat, Dec 11, 2010 at 12:15 AM, Orion Poplawski <or...@cora.nwra.com> wrote:
> Trying to compile octcdf-1.1.1 with octave 3.2.4 on Fedora 14, I get:
>
> mkoctfile -DHAVE_OCTAVE_ -v -c ov-netcdf.cc -DH5_USE_16_API -I/usr/include
> -DHAVE_OCTAVE_INT
> g++ -c -DH5_USE_16_API -fPIC -I/usr/include/octave-3.2.4
> -I/usr/include/octave-3.2.4/octave -mieee-fp -I/usr/include/freetype2 -O2 -g
> -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom
> -fasynchronous-unwind-tables -I/usr/include -DHAVE_OCTAVE_ -DH5_USE_16_API
> -DHAVE_OCTAVE_INT ov-netcdf.cc -o ov-netcdf.o
> ov-netcdf.cc: In function ‘octave_value ov_nc_get_att(int, int,
> std::string)’:
> ov-netcdf.cc:623:424: error: call of overloaded
> ‘octave_value(Array<double>&)’ is ambiguous
> /usr/include/octave-3.2.4/octave/ov.h:263:3: note: candidates are:
> octave_value::octave_value(const ArrayN<octave_int<long long unsigned int>
>>&)
> /usr/include/octave-3.2.4/octave/ov.h:261:3: note:
> octave_value::octave_value(const ArrayN<octave_int<unsigned int> >&)
> /usr/include/octave-3.2.4/octave/ov.h:259:3: note:
> octave_value::octave_value(const ArrayN<octave_int<short unsigned int> >&)
> /usr/include/octave-3.2.4/octave/ov.h:257:3: note:
> octave_value::octave_value(const ArrayN<octave_int<unsigned char> >&)
> /usr/include/octave-3.2.4/octave/ov.h:255:3: note:
> octave_value::octave_value(const ArrayN<octave_int<long long int> >&)
> /usr/include/octave-3.2.4/octave/ov.h:253:3: note:
> octave_value::octave_value(const ArrayN<octave_int<int> >&)
> /usr/include/octave-3.2.4/octave/ov.h:251:3: note:
> octave_value::octave_value(const ArrayN<octave_int<short int> >&)
> /usr/include/octave-3.2.4/octave/ov.h:249:3: note:
> octave_value::octave_value(const ArrayN<octave_int<signed char> >&)
> /usr/include/octave-3.2.4/octave/ov.h:247:3: note:
> octave_value::octave_value(const octave_uint64&)
> /usr/include/octave-3.2.4/octave/ov.h:246:3: note:
> octave_value::octave_value(const octave_uint32&)
> /usr/include/octave-3.2.4/octave/ov.h:245:3: note:
> octave_value::octave_value(const octave_uint16&)
> /usr/include/octave-3.2.4/octave/ov.h:244:3: note:
> octave_value::octave_value(const octave_uint8&)
> /usr/include/octave-3.2.4/octave/ov.h:243:3: note:
> octave_value::octave_value(const octave_int64&)
> /usr/include/octave-3.2.4/octave/ov.h:242:3: note:
> octave_value::octave_value(const octave_int32&)
> /usr/include/octave-3.2.4/octave/ov.h:241:3: note:
> octave_value::octave_value(const octave_int16&)
> /usr/include/octave-3.2.4/octave/ov.h:240:3: note:
> octave_value::octave_value(const octave_int8&)
> /usr/include/octave-3.2.4/octave/ov.h:233:3: note:
> octave_value::octave_value(const Sparse<double>&, const MatrixType&)
> /usr/include/octave-3.2.4/octave/ov.h:230:3: note:
> octave_value::octave_value(const ArrayN<char>&, bool, char)
> /usr/include/octave-3.2.4/octave/ov.h:221:3: note:
> octave_value::octave_value(const ArrayN<bool>&)
> /usr/include/octave-3.2.4/octave/ov.h:210:3: note:
> octave_value::octave_value(const ArrayN<std::complex<float> >&)
> /usr/include/octave-3.2.4/octave/ov.h:209:3: note:
> octave_value::octave_value(const ArrayN<std::complex<double> >&)
> /usr/include/octave-3.2.4/octave/ov.h:196:3: note:
> octave_value::octave_value(const ArrayN<float>&)
> /usr/include/octave-3.2.4/octave/ov.h:195:3: note:
> octave_value::octave_value(const ArrayN<double>&)
> /usr/include/octave-3.2.4/octave/ov.h:189:3: note:
> octave_value::octave_value(const ArrayN<octave_value>&, bool)
>
> ... and repeats at lines 624-627.
>
> Seeing that a similar error was reported against image-1.0.11 and fixed in
> 1.0.12, I came up with the attached patch.  Now, I really have no idea what
> I'm doing here, I just changed Array to ArrayN as I saw done in
> image-1.0.12, I have no idea if this is the correct fix, just that it
> compiles.
>
>
> --
> Orion Poplawski
> Technical Manager                     303-415-9701 x222
> NWRA/CoRA Division                    FAX: 303-415-9702
> 3380 Mitchell Lane                  or...@cora.nwra.com
> Boulder, CO 80301              http://www.cora.nwra.com
>
> ------------------------------------------------------------------------------
> Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
> new data types, scalar functions, improved concurrency, built-in packages,
> OCI, SQL*Plus, data movement tools, best practices and more.
> http://p.sf.net/sfu/oracle-sfdev2dev
> _______________________________________________
> Octave-dev mailing list
> Octave-dev@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/octave-dev
>
>

------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to