If anyone wants to, knows how to successfully edit this article now supposedly posted on the opencpn
.org wiki, please replace the entire contents of said document with this. I have had NO SUCCESS TRYING TO DO IT MYSELF! Thanks.
Although this article refers specifically to the Motorola Xoom, it is likely that if you own any brand of device with the armel architecture the instructions herein will enable you to install Linux
and OpenCPN on your device. The primary difference will be the method used to unlock your bootloader (root the device). If a method for rooting your device cannot be found here: Android & Windows Phone: Tablets, Apps, & ROMs @ xda-developers
, then use your browser's search engine
inserting your model with the word root or rooting. You are bound to find a method somewhere.
Read the precautionary notes at the XDA site - link provided below. Things can go wrong.
If you have any version of Motorola Xoom you will want to begin here: [Root] Universal Xoom Root - ANY XOOM ANY UPDATE - xda-developers
You will need access to a desktop
computer, and a usb cable for connecting the desktop
computer to your device. Download and install the files mentioned in the XDA instructions to your tablet and desktop computer. Simply click on the Google
Play icon on your tablet and use the search engine
to locate the files. Files installed on the desktop are downloaded from XDA.
Follow the instrictions to a "T", and take your time.
Once you have successfully "rooted" your tablet go to step 2:
Presently there is no way to replace Android outright with Linux
. There have been successful installations, but due to the nagging problem of proprietary drivers, some hardware
won't work. If you can live without sound, wireless and such you may want to give it a go. Risks will be considerable though. Instead, I recommend you download from Google Play the "Linux Installer" by Galoula. Note that there is another installer available "Complete Linux Installer" with good reviews
, based upon the same principle as "Linux Installer". I have no experience using "Complete Linux Installer" which is why I recommend "Linux Installer" by Galoula. Other methods are also available, but require some prior experience using Linux.
Install from Google Play the Android Terminal Emulator and "Remotix Lite" VNC Viewer (free version). The viewer is necessary to access your Linux desktop. The terminal is not only used in conjunction with Linux Installer, but essential later on when we will install wxWidgets and OpenCPN.
Once you have Downloaded and installed one of the two installers available from Google Play, install the distribution and desktop you prefer. I had trouble trying to install combinations other than Debian XFCE. So, at this time I recommend installing Debian "Stable" (Squeeze) and XFCE.
I recommend you create a loop filesystem sized to 8 gigabytes. This is because you will be downloading a lot of development files/utilities, may want to experiment
with more than one window manager and choose to install nav. charts
within the Linux filesystem. Alternatively you may prefer installing them on an external micro sd card in order to free space in internal memory.
Follow instructions from inside Linux Installer, using the "setup" menus in both the installer and package manager modules. Use the package manager from inside the installer to start ssh and the VNC server (not same thing as Remotix Lite), update apt and upgrade your system. If you have followed instructions, ssh and vnc server are started - the settings for Remotix Lite are correct you should see an XFCE desktop when you click on "connect" from inside Android VNC. See instructions in step () for Remotix Lite settings.
note: It is important to have a good, relatively fast internet
connection from here on.
OpenCPN has a number of "dependencies that must be downloaded and installed in your new Linux system. We also need to install files to enable compiling OpenCPN and wxWidgets.
Copy and paste this into the terminal at the prompt;
"apt-get install libglu1-mesa libgl1-mesa-glx zlib1g bzip2 gpsd gpsd-clients xcalib libgtk2.0-dev gettext git-core cmake libgps-dev build-essential wx-common libglu1-mesa-dev libgtk2.0-dev libbz2-dev libtinyxml-dev libsdl1.2debian_all debhelper dev-scripts dh-make dpkg-dev fakeroot lintian diff patch" <enter>
Files above will have dependencies of their own so more files than listed above will download and install.
Downloading wxWidgets and OpenCPN source code.
Open the Android Terminal. You will see a blank screen
with the aforementioned prompt >. Type into the terminal "linuxchroot" and press <enter>
Your Linux file system will be 'mounted' and rendered fully accessible. To view the linux filesystem structure use one of the several file managers available from Google Play and 'navigate' to /data/local/mnt/Linux. Be careful in whatever you do while navigating the file system and issuing commands from within the terminal. You are working at all times within a 'root' environment
and can destroy your installation! Take a look around. The 'home' filesystem is where you will be installing wxWidget and OpenCPN source files. You will be working on them from within the terminal, not your file manager. Note that you can create directories, copy, move, rename and delete files from with a file manager as part of this project
. But the rest must be done from within the terminal.
Enter the '/home' directory from within the terminal by typing "cd /home" <enter> then type "mkdir Downloads" <enter> Repeat this step to create "Downloads2" and "Downloads3"
Next type "cd Downloads" <enter>
Make sure you are connected to the internet
Copy and paste into the terminal:
"git clone git://opencpn.git.sourceforge.net/gitroot/opencpn/opencpn" then press <enter>
Alternately you can try:
git clone https://github.com/OpenCPN/OpenCPN.git
Wait until the download stops, then type "cd Downloads2" <enter>
Copy and paste this command at the prompt:
"git clone git://gitorious.org/wxwidgets/wxwidgets.git" then press <enter>
Wait until the download stops then type at the prompt: "cd wxwidgets" <enter>
Copy and paste this command at the prompt;
"./configure --enable-plugins --enable-menus --enable-tooltips --enable-gif --enable-xpm --with-gtk=2 --with-libpng --with-libjpeg --with-libtiff --with-opengl --with-sdl --with-regex --with-zlib" <enter> (Note that the period before "/" must be included!)
When the configuration process stops type at the terminal prompt: "make debian-dist" <enter>
If the make debian dist process stops without errors, type at the terminal prompt:
"cd _dist_dir" <enter>
"cd wxGTK-2.9.2" <enter>
"make" <enter> Note: this process can take more than an hour, maybe two - grab a cup of coffee.
"make install" <enter>
At the terminal prompt copy and paste: "update-alternatives --install /usr/local/bin/wx.config wx.config /usr/local/lib/wx/config/gtk2-ansi-release-2.8 2" <enter>
At the terminal prompt copy and paste:
"update-alternatives --install /usr/local/lib/wx.pth wx.pth /usr/local/lib/ 2" <enter>
"update-alternatives --list wx.config" <enter>
This step should confirm wx.config path is as above
"update-alternatives --list wx.pth" <enter>
Should confirm wx.pth as above.
Configuring and installing OpenCPN:
Assume in commands below you have the Linux system mounted ("linuxchroot") from within Android Terminal and commands are being entered at the prompt>
"cd /home/Downloads/opencpn" <enter>
"mkdir build" <enter>
"cd build" <enter>
"cmake -DPREFIX=/usr -D CMAKE_VERBOSE_MAKEFILE:BOOL=TRUE /home/Downloads/opencpn" <enter>
Provided the last command executes with no errors, continue to the next command.
If the "make" command continued to 100%;
"make install" <enter>
OpenCPN is now installed and ready to use.
You are already working in a mounted Linux system so all you need to do now is start "Linux Installer", Switch to the Distribution Manager by clicking on the divided rectangular icon at the bottom of GUI. Click on "ssh". Click on "vnc". Open Remotix lite. Make sure the settings are:
Name: "new Server", IP Address: "127.0.0.1", Port: "5900", Authentication: vnc password. Enter a password you will remember. The same password must be used in the VNC server set up inside package manager (linux Installer). VNC server type: "Autodetect". Operating system type: "Other".
From within Android VNC Viewer click on "connect". You should see the XFCE desktop.
If so, you will most likely find OpenCPN in the main menu under "Education".
Click on the OpenCPN icon and the program should start.
See OpenCPN Homepage for additional information: opencpn.org/ocpn/