Fri 12 Dec 2014 09:31:45 PM UTC, comment #7:
Indeed, just patching mxarry.h alongthe lines you sketched in the installed Octave tree makes ltfat install fine :-)
Then doing:
at least suggests that the package runs fine....
BYW it seems <cstdint> is only included in C+11 / clang. We have to make do with <stdint.h>
|
Fri 12 Dec 2014 09:22:01 PM UTC, comment #6:
It should be required for the patch except to verify that octave still compiles ok with the patch applied.
My comment applied more to the fact that I had previously just compiled octave with 64 bit, but the supporting libraries (suitesparse etc) was still built without the enable-64 option.
So the patch is required in order for the packages to install successfully in windows, however it isn't the only issue.
|
Fri 12 Dec 2014 09:02:30 PM UTC, comment #5:
Q: is a complete new mxe-octave build required or would it suffice to patch mxarray.h in the installed Octave directory tree? I guess the former. But I can give it a try here...
quaternion, data-smoothing, fuzzy-logic and optim install fine with current Octave sources with or without patch.
Indeed, odepkg, fl-core, netcdf, image and ltfat have more profound problems. And that's only packages included in mxe-octave - who knows what problems turn up when more packages get included.
IIRC the compile error you showed for image is the same that I've got ever since I started with 64bit mingw cross-builds a few months ago. So it seems to be separate from the <stdint.h> / <cstdint> issue.
|
Fri 12 Dec 2014 05:25:27 PM UTC, comment #4:
ltfat will installed ok on my 64 bit 3.8.2 with it moved.
I believe quaterian, fuzzy logic installed ok on 64 bit 3.8.2 without the change.
I was going to do a new install just to make sure.
The image odepkg, fl-core, netcdf packages now have a different problem.
|
Fri 12 Dec 2014 04:43:29 PM UTC, comment #3:
The idea was taken from the thread post mentioned in "original submission" below, the poster in that thread gave no further info. I'm not proficient in C++ so there's undoubtedly room for improvement.
The changeset did make a difference around October; it allowed to install a few OF packages [*] that didn't without this patch. But yes, in recent MXE builds it doesn't seem to be make a difference anymore (the OF packages in question do install without it now).
Whether that is due to a newer mingw/gcc?
Does your change (moving it up & include <cstdint> help to get OF image, odepkg, fl-core, ltfat and netcdf installed? That would be awesome. I can only try it here much later tonight or tomorrow.
[*] (see Task #13313, orig. subm.) data-smoothing, fuzzy-logic, optim and quaternion
|
Fri 12 Dec 2014 02:23:00 PM UTC, comment #2:
Changeset does not appear to work for me.
In mxarray.in.h, mwSize,mwIndex and mmwSignedIndex are typedefed to int64_t when in 64 bit mode.
But the #include <stdint.h> is below that.
If the include is added just before the typedefs for mwSize, then it appears to work ok for me.
It should also probally be <cstdint> rather than <stdint.h> ?
|