bugGNU Octave - Bugs: bug #43908, Some OF packages won't install...

 
 

bug #43908: Some OF packages won't install with 64-bit indexing Octave

Submitter:  Philip Nienhuis <philipnienhuis>
Submitted:  Tue 30 Dec 2014 11:41:15 PM UTC
   
 
Category:  Configuration and Build System Severity:  4 - Important
Priority:  5 - Normal Item Group:  Build Failure
Status:  Fixed Assigned to:  None
Originator Name:  Philip Nienhuis Open/Closed:  * Closed
Release:  * dev Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Thu 12 Jul 2018 07:19:29 AM UTC, comment #23: 

(Sorry, I forgot about this bug)

All packages cross-build fine now, I suppose that the same holds when installing packages in an installed Octave.

So yes let's close this bug.

Philip Nienhuis <philipnienhuis>
Group Member
Thu 12 Jul 2018 12:09:06 AM UTC, comment #22: 

@Philip: Is this bug still a problem?  The buildbots seem to be compiling MXE Octave and packages frequently without problems.

Rik <rik5>
Group administrator
Fri 09 Mar 2018 07:00:21 PM UTC, comment #21: 

So what is the recommendation for mxe-octave builds?

Philip Nienhuis <philipnienhuis>
Group Member
Fri 09 Mar 2018 06:38:58 PM UTC, comment #20: 

For mxe-octave, the --enable-windows-64 uses 64-bit pointers, so the resulting binary won't work on a 32-bit system.

The --enable-64 option (for mxe-octave) causes the Fortran parts to be built with 64-bit integers.  This also applies to OpenBLAS, which is not written in Fortran, but by default uses 32-bit integers to conform to the reference BLAS, which is defined in Fortran.  There is little need for this now unless you need to do linear algebra on very large arrays.

For Octave itself, we now build with 64-bit indexing by default but configure detects whether the BLAS uses 32-bit integers.  If so, then we limit the size of arrays that can be passed to those functions.

As the NEWS file says:


 ** On systems with 64-bit pointers, --enable-64 is now the default and
    Octave always uses 64-bit indexing.  However, if the configure
    script determines that the BLAS library uses 32-bit integers, then
    operations using the following libraries are limited to arrays with
    dimensions that are smaller than 2^31 elements:

      BLAS  LAPACK  QRUPDATE  SuiteSparse  ARPACK

    Additionally, the following libraries use "int" internally, so
    maximum problem sizes are always limited:

      glpk  Qhull


John W. Eaton <jwe>
Group administrator
Fri 09 Mar 2018 06:08:43 PM UTC, comment #19: 

Oh, I make my cross-builds with --enable-windos-64 and haven't met problems.
I'll try with --enable-64 soon.

Is --enable-windows-64 advantageous over --enable-64 or vice versa? Do we even need it these days?

Philip Nienhuis <philipnienhuis>
Group Member
Thu 08 Mar 2018 11:17:40 PM UTC, comment #18: 

Is this problem still an issue?  Octave now does 64-bit indexing by default on systems with 64-bit pointers and we are regularly building mxe-octave and all the packages that it includes with --enable-64.

John W. Eaton <jwe>
Group administrator
Wed 30 Sep 2015 11:50:31 PM UTC, comment #17: 

Pushed fixes for fl-core, nurbs,  and netcdf:

http://hg.octave.org/mxe-octave/rev/85abb6c3ec8b
http://hg.octave.org/mxe-octave/rev/de0b5dfe77f6
http://hg.octave.org/mxe-octave/rev/1c72016826aa


That leaves image and odepkg still with issues

John Donoghue <lostbard>
Group Member
Wed 30 Sep 2015 05:30:49 PM UTC, comment #16: 

Posted new bug for of-nurbs: https://savannah.gnu.org/bugs/index.php?46081

John Donoghue <lostbard>
Group Member
Sun 27 Sep 2015 06:35:58 PM UTC, comment #15: 

Posted new bug for mxe.h (used by nan and stk)
https://savannah.gnu.org/bugs/?46062

John Donoghue <lostbard>
Group Member
Sun 27 Sep 2015 01:49:45 PM UTC, comment #14: 

The problem with stk, and nan seems to be this: https://savannah.gnu.org/bugs/?func=detailitem&item_id=43318

int64_t not defined

John Donoghue <lostbard>
Group Member
Sun 27 Sep 2015 01:36:38 PM UTC, comment #13: 

Created a new bug report for netcdf and attached a patch that seems to work, if anyone else wants to try it.

https://savannah.gnu.org/bugs/index.php?46060

John Donoghue <lostbard>
Group Member
Sun 27 Sep 2015 12:26:32 AM UTC, comment #12: 

nan also fails for me - anyone else seen issues with it?

John Donoghue <lostbard>
Group Member
Sat 26 Sep 2015 09:11:26 AM UTC, comment #11: 

@JohnD: see attachment

(file #34983)

Philip Nienhuis <philipnienhuis>
Group Member
Fri 25 Sep 2015 12:58:25 PM UTC, comment #10: 

Can you provide the log files for them?


I always do --enable-windows-64 which then enables --enable-64, so haven't tried --enable-64 on its own.


John Donoghue <lostbard>
Group Member
Fri 25 Sep 2015 11:51:39 AM UTC, comment #9: 

Oopsie, should read: "...fail to get cross-compiled..."

I used 64-bit indexing ==> --enable-64

with --enable-windows-64 things (cross-)compile and run well.

As to "compile" (natively), I haven't tried as several packages (also the ones that do get (cross-)built need fixes in mxe (most if not all made by you) to get compiled anyway.

Philip Nienhuis <philipnienhuis>
Group Member
Fri 25 Sep 2015 10:28:54 AM UTC, comment #8: 

@Phillip,

is that using --enable-windows-64, or just --enable-64 in configure for mxe-octave?

John Donoghue <lostbard>
Group Member
Thu 24 Sep 2015 06:33:40 PM UTC, comment #7: 

Update:

In a recent 64-bit indexing build for Windows (4.1.0+, ~Sep 13) the following packages still fail to install (or get compiled when doing --enable-binary-packages in MXE):

image
fl-core
netcdf
nurbs
stk
odepkg

Philip Nienhuis <philipnienhuis>
Group Member
Sun 15 Mar 2015 02:16:42 AM UTC, comment #6: 

The image package build failure is also previously reported as bug #38085.

Mike Miller <mtmiller>
Group Member
Mon 05 Jan 2015 09:42:14 PM UTC, comment #5: 

I managed to get Octave w. 64-bit indexing built on Linux so I could try installing the OF packages in question.

Indeed, image-2.2.0, netcdf-1.0.5, fl-core-1.0.0 and odepkg-0.8.4 fail to build, all with invalid or ambiguous int conversions or -overloading.

I'll set status to "postponed". i.e. until the maintainers of those OF packages have managed to fix the 64-bit indexing build errors.

Philip Nienhuis <philipnienhuis>
Group Member
Wed 31 Dec 2014 07:49:46 PM UTC, comment #4: 

I've yet to create a Linux build w.64-bit indexing; I have more priority for Windows builds as I use those at work.
JWE mentioned a native Linux MXE setup is required to also build the dependencies with 64-b idx.

Like you I also tend to think that the packages in question simply aren't fit for 64-bit indexing; a pity, esp. for the image package (I have some GIS raster maps and aerial photographs that easily expand to several GBs in RAM).

Philip Nienhuis <philipnienhuis>
Group Member
Wed 31 Dec 2014 07:05:59 PM UTC, comment #3: 

I changed the title to reflect the fact that some packages still won't install when using 64-bit Octave.

Do they work when created and installed on a Linux system?  My guess is that this doesn't have much to do with Windows or MXE cross-building, but that the Octave Forge coders didn't anticipate that there could be a 64-bit Octave.

Rik <rik5>
Group administrator
Wed 31 Dec 2014 06:55:43 PM UTC, comment #2: 

As to timing you've hit it on the nose :-)  Just completed a 64-b indexing cross-build & tried it on Windows - my last Octave action in 2014 (2015 is just 4 hours away here).

I'm happy to report that your fix works fine. No includes required. Never expected that just deleting the module.mk entry would fix it.
- fuzzy-logic
- quaternion
- optim
did install fine. In addition
- ltfat
did install but with errors when generating the second shared library so I do not expect this package to work properly.

Some packages included in mxe-octave still do not install (but maybe that's due to the package code itself - just guessing):
- image
- odepkg
- fl-core
- netcdf

Close this bug, or change the title to reflect mxarray issue is solved but other packages still run into trouble, or update the 64-bit-indexing-on-Windows-entry in the task tracker?

Thank you for the fix.

Philip Nienhuis <philipnienhuis>
Group Member
Wed 31 Dec 2014 06:25:40 PM UTC, comment #1: 

Has the situation improved since I committed a second fix for bug #43805 and we no longer distribute mxarray.h?

Or is the situation that we need to modify mxarray.in.h to have '#include <stdint.h>' in it?

Rik <rik5>
Group administrator
Tue 30 Dec 2014 11:41:15 PM UTC, original submission:  

Affected Octave-Forge packages are a.o., ltfat, fuzzy-logic, quaternion, optim.

See this thread on maintainers ML:
http://octave.1599824.n4.nabble.com/MXE-quot-undefined-reference-to-mxArray-mxArray-mxClassID-long-long-long-long-mxComplexity-quot-tt4667930.html#a4667953
That thread relates to a bug that turns out to be uncovered by the fix for bug #43805.

Philip Nienhuis <philipnienhuis>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #34983:  64bidxofpkgerrs.tar.gz added by philipnienhuis (7KiB - application/x-gzip)

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by rik5 (Updated the item)
  • -email is unavailable- added by lostbard (Posted a comment)
  • -email is unavailable- added by mtmiller (Posted a comment)
  • -email is unavailable- added by philipnienhuis (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 13 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2018-07-12 philipnienhuis StatusPostponed Fixed
        Open/ClosedOpen Closed
    2016-07-01 rik5 Severity3 - Normal 4 - Important
    2015-09-27 lostbard Dependencies- Depends on bugs #46062
    2015-09-27 lostbard Dependencies- Depends on bugs #46060
    2015-09-26 philipnienhuis Attached File- Added 64bidxofpkgerrs.tar.gz, #34983
    2015-09-25 rik5 Carbon-CopyRemoved 72865 -
    2015-03-15 mtmiller Operating SystemMicrosoft Windows Any
        Dependencies- Depends on bugs #38085
    2015-01-05 philipnienhuis StatusNeed Info Postponed
    2014-12-31 rik5 Operating SystemOther Microsoft Windows
        SummarySome OF packages won\'t build with 64-bit indexing Octave (mxarray.h issue) Some OF packages won't install with 64-bit indexing Octave
    2014-12-31 rik5 StatusNone Need Info

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code