Line 1: |
Line 1: |
− | For RedHat-based distributions like RedHat, CentOS, Fedora, Scientific Linux ... | + | For RedHat-based distributions like RedHat, CentOS, Fedora, Scientific Linux, ... |
| | | |
− | === Dependencies === | + | === Generic RedHat === |
| | | |
− | Tested with CentOS 6.4 and Fedora 20, but not completely. | + | Tested Fedora 33, but not completely. |
| + | |
| + | dnf install libtool make automake autoconf gcc gcc-devel \ |
| + | g++ g++-devel gcc-fortran gawk gperf less ncurses |
| + | |
| + | Tested Fedora 20, but not completely. |
| | | |
| yum install gcc gcc-c++ kernel-devel make mercurial libtool libtool-ltdl-devel libtool-ltdl autoconf cmake lapack-devel \ | | yum install gcc gcc-c++ kernel-devel make mercurial libtool libtool-ltdl-devel libtool-ltdl autoconf cmake lapack-devel \ |
| lapack pcre-devel readline-devel readline fftw-devel glpk-devel suitesparse suitesparse-devel gnuplot libcurl-devel zlib-devel \ | | lapack pcre-devel readline-devel readline fftw-devel glpk-devel suitesparse suitesparse-devel gnuplot libcurl-devel zlib-devel \ |
− | flex texlive gperf fltk-devel qhull-devel hdf5-devel gl2ps-devel qrupdate-devel arpack-devel qscintilla-devel | + | flex texlive gperf fltk-devel qhull-devel hdf5-devel gl2ps-devel qrupdate-devel arpack-devel qscintilla-devel llvm-devel qt-devel \ |
| + | bison ghostscript-devel librsvg2-tools icoutils texlive-metapost |
| + | |
| + | === CentOS === |
| + | |
| + | Enable use of [https://fedoraproject.org/wiki/EPEL Extra Packages for Enterprise Linux (EPEL)] AND THEN install octave dependencies development packages: |
| + | |
| + | yum -y install yum-utils |
| + | yum-builddep -y octave |
| + | yum -y install qt-devel mercurial gcc-c++ lapack-devel libtool |
| + | yum -y install epstool transfig pstoedit qscintilla-devel |
| + | |
| + | The arpack-devel package distributed with CentOS 7 (arpack-devel-3.1.3-2.el7.x86_64) seems a bit old, as routine "seupdate" seems not recognized during |
| + | the "configure" step. This can be solved by installing arpack from github: |
| + | git clone git@github.com:opencollab/arpack-ng.git |
| + | cd arpack-ng |
| + | ./bootstrap |
| + | ./configure --prefix="some local prefix" |
| + | make; make install |
| + | |
| + | Current release as of Aug. 20th 2018 seems to compile OK with CentOS blas-devel |
| + | |
| + | ===== Prepare installation of Octave ===== |
| + | |
| + | The remaining steps do not need to be done as root, except for |
| + | possibly the final installation step. I recommend you create an |
| + | installation directory like /usr/local/octave/VERSION so that it is |
| + | easy to uninstall a given version simply by removing a directory tree. |
| + | Then to use the installed version, put /usr/local/octave/VERSION/bin |
| + | in your PATH. If you create the /usr/local/octave/VERSION directory |
| + | with appropriate permissions, it is not necessary to be root to |
| + | install Octave. For example, |
| + | |
| + | mkdir -p /usr/local/octave/dev |
| + | chown jwe.jwe /usr/local/octave/dev |
| + | |
| + | create src and build directories: |
| + | |
| + | mkdir src build |
| + | |
| + | ===== Compiling Octave from source ===== |
| + | |
| + | Check out a copy of the octave sources in the src directory |
| + | |
| + | cd src |
| + | hg clone http://hg.savannah.gnu.org/hgweb/octave |
| + | |
| + | * bootstrap the build system |
| + | |
| + | cd octave |
| + | ./bootstrap |
| + | |
| + | * build Octave in the build directory. choose whatever prefix is appropriate for your system. the -jN option builds in parallel |
| + | |
| + | cd ../../build |
| + | ../src/octave/configure --prefix=/usr/local/octave/dev |
| + | make -j6 all |
| + | |
| + | * Run the test suite |
| + | |
| + | make check |
| + | |
| + | * If everything looks OK (a few failures are probably normal for the development version) install it |
| + | |
| + | make install |
| + | |
| + | ===Redhat Enterprise Linux workstation 6.4-2.6.32-358=== |
| + | Use the rpms to install |
| + | octave version: 3.4.3 |
| + | |
| + | yum install gnuplot |
| + | |
| + | * Download and install lcms |
| + | |
| + | rpm -ivh lcms2-2.8-6.el6.x86_64.rpm |
| + | |
| + | * Download and install libwmf |
| + | |
| + | rpm -ivh libwmf-lite-0.2.8.4-25.el6_7.x86_64.rpm |
| + | |
| + | * Download GraphicsMagick and GraphicsMagick-c++ and install them |
| + | |
| + | rpm -ivh GraphicsMagick-1.3.32-1.el6.x86_64.rpm |
| + | rpm -ivh GraphicsMagick-c++-1.3.32-1.el6.x86_64.rpm |
| + | |
| + | *Install suitesparse |
| + | |
| + | yum install suitesparse |
| + | |
| + | * Install fftw3 |
| + | |
| + | yum install fftw |
| + | |
| + | yum install glpk |
| + | |
| + | * Download and install fltk |
| + | |
| + | rpm -ivh fltk-1.1.10-1.el6.x86_64.rpm |
| + | |
| + | * Download and install hdf5 |
| + | |
| + | rpm -ivh hdf5-1.8.5.patch1-10.el6.x86_64.rpm |
| + | |
| + | * Download and install qhull |
| + | |
| + | rpm -ivh qhull-2003.1-14.el6.x86_64.rpm |
| + | |
| + | * Install blas |
| + | |
| + | yum install blas |
| + | |
| + | * Download and install qrupdate |
| + | |
| + | rpm -ivh qrupdate-1.1.2-1.el6.x86_64.rpm |
| + | |
| + | * Install texinfo |
| + | |
| + | yum install texinfo |
| + | |
| + | * Lastly, install octave |
| + | |
| + | rpm -ivh octave-3.4.3-2.el6.x86_64.rpm |
| + | |
| + | |
| + | [[Category:GNU/Linux]] |
| + | [[Category:Installation]] |