|
From: | John W. Eaton |
Subject: | Re: MXE: "undefined reference to `mxArray::mxArray(mxClassID, long long, long long, mxComplexity)" |
Date: | Tue, 30 Dec 2014 14:10:16 -0500 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.2.0 |
On 12/27/2014 06:27 PM, Philip Nienhuis wrote:
Philip Nienhuis wroteWhen trying to cross-build Octave (3.9.0+ & 4.1.0+) with --enable-64, the build of Octave stops with errors a la: : octave-value/.libs/liboctave-value.a(octave_value_liboctave_value_la-ov-bool.o): In function `octave_bool::as_mxArray() const': /home/philip/devel/octdev/mxe/mxe64_20141208/tmp-octave/octave-3.9.0+/libinterp/octave-value/ov-bool.cc:234: undefined reference to `mxArray::mxArray(mxClassID, long long, long long, mxComplexity)' :FTR, building stable-octave goes fine & it runs fine on Windows 64b
I'm pretty sure that the problem is that the generated mxarray.h file that was accidentally included in the 4.1.0+ distribution that mxe-octave is picking up for default-octave has lines like
typedef int mwSize; typedef int mwIndex;when these should be using int64_t on 64-bit systems instead of int. That problem should be fixed if the mxarray.h file is generated as part of the build process.
jwe
[Prev in Thread] | Current Thread | [Next in Thread] |