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

 
 

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

Submitted by:  Philip Nienhuis <philipnienhuis>
Submitted on:  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:  Postponed Assigned to:  None
Originator Name:  Philip Nienhuis Open/Closed:  Open
Release:  dev Operating System:  Any

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

( Jump to the original submission)

Fri 09 Mar 2018 07:00:21 PM UTC, comment #21:

So what is the recommendation for mxe-octave builds?

Philip Nienhuis <philipnienhuis>
Project 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:

John W. Eaton <jwe>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project Member
Sat 26 Sep 2015 09:11:26 AM UTC, comment #11:

@JohnD: see attachment

(file #34983)

Philip Nienhuis <philipnienhuis>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project Administrator
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>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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>
Project 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)

 

Digest:
   bug dependencies.

Items that depend on this one: None found

 

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)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

     

     

    Follow 11 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    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.3