Linux Install¶
Installation will require Python 2.7 and pip.
Ubuntu¶
You can install the required packages on Ubuntu by running the following command:
sudo apt-get install -y python python-pip python-dev build-essential git
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
Debian 7/8¶
Debian’s sources lists are out of date and will not fetch the correct versions of Python and PIP. You must download and install these from source:
sudo apt-get install -y build-essential libbz2-dev libsqlite3-dev libreadline-dev zlib1g-dev libncurses5-dev libssl-dev libgdbm-dev python-dev nodejs npm
wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
tar xzf Python-2.7.12.tgz && cd Python-2.7.12
./configure --prefix=/opt/python
make
sudo make install
ln -s /opt/python/bin/python2.7 /usr/local/bin/python2.7
ln -s /opt/python/bin/python2.7 /usr/bin/python2.7
ln -s /usr/bin/python2.7 /usr/bin/python
ln -s /usr/local/bin/python2.7 /usr/local/bin/python
ln -s /opt/python/bin/pip /usr/bin/pip
ln -s /opt/python/bin/pip /usr/local/bin/pip
ln -s /usr/bin/nodejs /usr/bin/node
sed -e '$a\PATH="$PATH:/opt/python/bin"\' ~/.profile
source ~/.profile
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
After install, check that you have the correct versions in your environment variables:
~$ python --version
Python 2.7.12
~$ pip --version
pip 8.1.2 from /home/user/.local/lib/python2.7/site-packages (python 2.7)
If your output looks as above, you can proceed with installation:
cd ~/
sudo apt-get install git
git clone https://github.com/RocketMap/RocketMap.git
cd RocketMap
sudo -H pip install -r requirements.txt
npm install
sudo npm install -g grunt-cli
sudo grunt build
Troubleshooting:¶
If you have preciously installed pip packages before following this guide, you may need to remove them before installing:
pip freeze | xargs pip uninstall -y
If you have other pip installed packages, the old requirements.txt and cannot uninstall all then you can use:
pip uninstall -r "old requirements.txt"
pip install -r "new requirements.txt"
An error resulting from not removing previous packages can be:
016-12-29 00:50:37,560 [ search-worker-1][ search][ INFO] Searching at xxxxxxx,xxxxxxx
2016-12-29 00:50:37,575 [ search-worker-1][ search][ WARNING] Exception while downloading map:
2016-12-29 00:50:37,575 [ search-worker-1][ search][ ERROR] Invalid response at xxxxxxx,xxxxxxx, abandoning location
If you’re getting the following error:
root:~/RocketMap# ./runserver.py
Traceback (most recent call last):
File "./runserver.py", line 10, in <module>
import requests
ImportError: No module named requests
You will need to completely uninstall all of your pip packages, pip, and python, then re-install from source again. Something from your previous installation is still hanging around.
Debian 7¶
Additional steps are required to get Debian 7 (wheezy) working. You’ll need to update from glibc
to eglibc
Edit your /etc/apt/sources.list
file and add the following line:
deb http://ftp.debian.org/debian sid main
Then install the packages for eglibc
:
sudo apt-get update
apt-get -t sid install libc6-amd64 libc6-dev libc6-dbg
reboot
Red Hat or CentOs or Fedora¶
You can install required packages on Red Hat by running the following command:
You may also need to install the EPEL repository to install python-pip
and python-devel
.
yum install epel-release
yum install python python-pip python-devel
Fedora Server:
dnf install python
dnf install redhat-rpm-config // fix for error: command 'gcc' failed with exit status 1
All set, head back to the basic install guide.