Octave for Android: Difference between revisions

2,621 bytes removed ,  2 November 2020
Drop Samsung Linux on Dex https://www.omgubuntu.co.uk/2019/10/samsung-linux-dex-cancelled
(Restructure Termux article for comprehension.)
(Drop Samsung Linux on Dex https://www.omgubuntu.co.uk/2019/10/samsung-linux-dex-cancelled)
Line 33: Line 33:


* https://lists.gnu.org/archive/html/octave-maintainers/2013-10/msg00406.html
* https://lists.gnu.org/archive/html/octave-maintainers/2013-10/msg00406.html
== Octave for Linux on Dex (Specific to certain Samsung Android devices) ==
[https://www.linuxondex.com/ Linux on Dex (LoD)] is an application (beta testing status) that runs on some Samsung Android devices.
To build Octave on LoD, do the following. This assumes you have LoD working. If not, follow the instructions on the LoD website.
# Many of the packages that Octave needs are not in the default Ubuntu installation. You will need to install them using <code>sudo apt install <package></code>. First, you need the compilers gcc, and gfortran. There are other packages that are essential to download: "libblas", "liblapack", "libatlas" and their development counterparts with the "-dev" extension.
# Remove all "libopenblas" packages with <code>sudo apt remove libopenblas*</code>. The OpenBLAS library from the default Ubuntu distribution does not work with Octave. You have to remove it. For details see bug {{bug|56900}}.
# Unpack the Octave source code and enter the directory. Create a build directory <code>mkdir my_build</code>, enter that directory and issue <code>../configure</code>. This will start the configure script. Look at the output at the end of the configure process to see what packages are not found by the script. Many of these will be things you want/need in terms of functionality. You can search for the packages available using the command "apt search", and install the ones you want using <code>sudo apt install <package></code> before compiling. If you want to install Octave in "my_build" be sure to issue <code>../configure --prefix=`pwd`</code> from this directory.
# In the {{Path|my_build}} directory issue <code>make</code> and <code>make install</code>.
Now you should have a working installation in, e.g., {{Path|/home/dextop/path_to/octave-5.1.0/my_build/}}.
Graphics:
# If you set the graphics toolbox to "gnuplot", Octave should generate plots correctly. If it does not, set the environment variable GNUTERM to x11. The default shell in LoD is bash, and you can either issue <code>export GNUTERM=x11</code> in the bash terminal or in your octave session issuing "setenv GNUTERM x11". You can also add <code>setenv GNUTERM x11</code> to your {{Path|.octaverc}} file to do this automatically.
# If you want to use Qt graphics it will take some work, and may or may not be possible. It has not been tested by anyone. You will need to download the package [https://github.com/termux/libandroid-shmem libandroid-shmem], get it working, and then recompile Octave linking to this library. There are more detailed instructions regarding the compilation on the github website.


[[Category:Installation]]
[[Category:Installation]]