gnu-octave / gnu-octave-enable-64 Goto Github PK
View Code? Open in Web Editor NEWProvides the necessary prerequisites to compile GNU Octave using 64-bit indices.
License: GNU General Public License v3.0
Provides the necessary prerequisites to compile GNU Octave using 64-bit indices.
License: GNU General Public License v3.0
ftp://alpha.gnu.org/gnu/octave/octave-4.2.0-rc4.tar.lz
System glpk depends on system suitesparse, and building with both -dev packages installed causes a segfault in "chol.cc-test", presumably from some conflict between system glpk pulling in system suitesparse, and the 64bit indexing suitesparse built by this makefile.
Is it possible to have it also build glpk against the custom suitesparse, just so that it can be available? Personally, I don't think we use it, but it would be nice if it could be sorted out.
Nov 25, 2017: SuiteSparse 5.0.0
Hi,
I follow the instructions you gave and compile the code. Everything went smooth until the very end moment with the error: "unable to find current directory"
It is really pity as I almost succeed to build GNU-Octave with enable-64.
Do you know why the error happen? and How to fix the problem?
Thanks!
Best,
....
make[5]: Leaving directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave' make[4]: Leaving directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
make[3]: Leaving directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave' make[2]: Leaving directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
make[1]: Leaving directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave' preserving existing HG-ID file make[1]: Entering directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
make check-recursive
preserving existing HG-ID file
make[2]: Entering directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave' Making check in libgnu make[3]: Entering directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu'
make check-recursive
make[4]: Entering directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu' make[5]: Entering directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu'
make[5]: Nothing to be done for check-am'. make[5]: Leaving directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu'
make[4]: Leaving directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu' make[3]: Leaving directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/libgnu'
preserving existing HG-ID file
make[3]: Entering directory `/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
Octave successfully built. Now choose from the following:
./run-octave - to run in place to test before installing
make check - to run the tests
make install - to install (PREFIX=/home/hoangc/keras-gp-master/GNU-Octave-enable-64/install)
HG ID for this build is "1327ea4f5a93"
make check-local
preserving existing HG-ID file
make[4]: Entering directory /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave' cd test && /bin/bash ../run-octave --norc --silent --no-history /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/test/fntests.m /home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave/test fatal: unable to find current directory make[4]: *** [check-local] Error 1 make[4]: Leaving directory
/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
make[3]: *** [check-am] Error 2
make[3]: Leaving directory `/home/hoangc/keras-gp-master/GNU-Octave-enable-64/build/octave'
See https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.0 for details.
Hi, thanks for your great help last time.
I was able to get this to compile before, but when I try now I'm getting this error a ways into the make:
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/libsuitesparseconfig.a(SuiteSparse_config.o): relocation R_X86_64_PC32 against symbol `SuiteSparse_config' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value
make[5]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/Mongoose/build'
collect2: error: ld returned 1 exit status
make[5]: *** [CMakeFiles/mongoose_dylib.dir/build.make:505: lib/libmongoose.so.2.0.2] Error 1
make[5]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/Mongoose/build'
make[4]: *** [CMakeFiles/Makefile2:364: CMakeFiles/mongoose_dylib.dir/all] Error 2
make[4]: *** Waiting for unfinished jobs....
[ 65%] Built target mongoose_unit_test_edgesep
make[4]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/Mongoose/build'
make[3]: *** [Makefile:141: all] Error 2
make[3]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/Mongoose/build'
make[2]: *** [Makefile:28: install] Error 2
make[2]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/Mongoose'
make[1]: *** [Makefile:42: install] Error 2
make[1]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse'
make: *** [Makefile:97: /etc/skel/GNU-Octave-enable-64/install/lib/libsuitesparseconfig_Octave64.so] Error 2
I am in a plain vanilla Kubuntu 18.10 & have as far as I know the Octave make dependencies fully satisfied. Thanks for any nudging on this. FWIW, the last time I wrote in (a little less than a year ago I think) the fix was to run make with -j2 rather than -j3 or s/t, & I will just say in advance that I have done that again here, but it hasn't worked this time. Thank you very much for this again. Great little weekend-project tool for me.
Joe Valentyn
https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.3
Sounds promising, the previous ones (0.3.1 and 0.3.2) did not compile&test without errors.
According to MXE, a recent successfully built tarball is available from:
http://hydra.nixos.org/job/gnu/octave-default/tarball/latest/download
So I ran make -j2 2>&1 | tee build/build.log without any errors.
When I go to run ./install/bin/octave nothing happens and it is because install/bin is empty.
Anything I'm doing wrong?
When installing Octave 5.2.0 on Ubuntu 18.04 I keep getting a segmentation fault for sparse input to LU which did not occur for 5.1.0:
%!testif HAVE_UMFPACK
...
%! [L, U] = lu (B);
For Octave 5.2.0:
octave:4> B = sprand(3,3,0.5); [L, U] = lu(B)
warning: lu: function may fail when called with less than 4 output arguments and a sparse input
fatal: caught signal fatal: caught signal fatal: caught signal fatal: caught signal fatal: caught signal fatal: caught signal Segmentation fault -- stopping myself...
fatal: caught signal Segmentation fault -- stopping myself...Segmentation fault (core dumped)
For Octave 5.1.0:
octave:3> B = sprand(3,3,.5); [L, U] = lu(B)
warning: lu: function may fail when called with less than 4 output arguments and a sparse input
L = ...
U = ...
I have not yet been able to track down the cause and would appreciate any advice on where to look.
EDIT:
Not just sparse input failing. Also failing on:
octave:40> [L,U,P] = lu (A);
octave:41> [L,U,P] = luupdate (L,U,P,u,v);
fatal: caught signal fatal: caught signal fatal: caught signal fatal: caught signal Segmentation fault -- stopping myself...fatal: caught signal fatal: caught signal Segmentation fault -- stopping myself...
Really odd, this problem, as the 5.1.0 installation worked fine on essentially the same build system. Perhaps it's related to pulling in system glpk and/or suitesparse instead of locally built libraries?
Aha, must be something like that because my 5.1.0 apparently was using system glpk...
after following your 'quick start' instructions, & after having had it work in previous Ubuntus, the 64-bit proof of concept test failed in the built Octave; so i looked at build.log, & it showed an error with Suitesparse's installation. trying to manually make it gave:
/usr/bin/ld: cannot find -lopenblas
collect2: error: ld returned 1 exit status
Makefile:80: recipe for target 'cholmod_demo' failed
make[2]: *** [cholmod_demo] Error 1
make[2]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/CHOLMOD/Demo'
Makefile:14: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/etc/skel/GNU-Octave-enable-64/build/suitesparse/CHOLMOD'
Makefile:14: recipe for target 'go' failed
make: *** [go] Error 2
root@thirdhalf:/etc/skel/GNU-Octave-enable-64/build/suitesparse#
thanks =)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.