Skip to content

Instantly share code, notes, and snippets.

@esromneb
Created February 13, 2022 03:28
Show Gist options
  • Save esromneb/764c4d15a0200b75a3c5c55c7b0b70b3 to your computer and use it in GitHub Desktop.
Save esromneb/764c4d15a0200b75a3c5c55c7b0b70b3 to your computer and use it in GitHub Desktop.
Dockerfile for gnuradio on ubuntu
FROM ubuntu:focal-20210827
MAINTAINER esromneb
ENV DEBIAN_FRONTEND noninteractive
ENV DISPLAY :0
ENV LC_ALL=C
RUN apt-get update && \
apt-get install -y \
ssh sudo gpgv2 apt-transport-https \
\
&& \
apt-get autoremove -y && \
apt-get clean
RUN apt-get update && \
apt-get install -y \
ssh git make cmake \
build-essential \
curl wget vim nano rsync iproute2 \
xauth x11-apps \
\
autoconf automake build-essential ccache cmake cpufrequtils doxygen ethtool fort77 g++ gir1.2-gtk-3.0 git gobject-introspection gpsd gpsd-clients inetutils-tools libasound2-dev libboost-all-dev libcomedi-dev libcppunit-dev libfftw3-bin libfftw3-dev libfftw3-doc libfontconfig1-dev libgmp-dev libgps-dev libgsl-dev liblog4cpp5-dev libncurses5 libncurses5-dev libpulse-dev libqt5opengl5-dev libqwt-qt5-dev libsdl1.2-dev libtool libudev-dev libusb-1.0-0 libusb-1.0-0-dev libusb-dev libxi-dev libxrender-dev libzmq3-dev libzmq5 ncurses-bin python3-cheetah python3-click python3-click-plugins python3-click-threading python3-dev python3-docutils python3-gi python3-gi-cairo python3-gps python3-lxml python3-mako python3-numpy python3-numpy-dbg python3-opengl python3-pyqt5 python3-requests python3-scipy python3-setuptools python3-six python3-sphinx python3-yaml python3-zmq swig wget \
\
&& \
apt-get autoremove -y && \
apt-get clean
RUN sed -i 's/[#]*X11Forwarding.*/X11Forwarding yes/g' /etc/ssh/sshd_config && \
sed -i 's/[#]*X11DisplayOffset.*/X11DisplayOffset 10/g' /etc/ssh/sshd_config && \
sed -i 's/[#]*X11UseLocalhost.*/X11UseLocalhost no/g' /etc/ssh/sshd_config && \
sed -i 's/[#]*AcceptEnv LANG LC_\*.*/#AcceptEnv LANG LC_\*/g' /etc/ssh/sshd_config
RUN \
mkdir /root/workarea && \
cd /root/workarea && \
git clone --single-branch --depth 1 --branch v4.1.0.3 https://github.com/EttusResearch/uhd && \
cd uhd && \
git submodule update --init --recursive && \
cd host && mkdir build
RUN \
cd /root/workarea/uhd && git branch -avv
RUN \
cd /root/workarea/uhd && git show -s --format=%H
RUN \
cd /root/workarea/uhd/host/build && cmake .. && \
make -j3 && \
sudo make install
ENV LD_LIBRARY_PATH=/usr/local/lib
RUN \
cd /root/workarea && \
git clone --single-branch --depth 1 --branch v3.9.3.0-rc1 https://github.com/gnuradio/gnuradio.git && \
cd gnuradio && \
git submodule update --init --recursive && \
mkdir build
RUN \
cd /root/workarea && \
git clone --single-branch --depth 1 --branch v2.5.0 https://github.com/gnuradio/volk.git && \
cd volk && \
git submodule update --init --recursive && \
mkdir build
RUN cd /root/workarea/volk/build && cmake .. && make -j3 && make install
RUN \
apt install -y pybind11-dev iputils-ping
RUN \
cd /root/workarea/gnuradio/build && \
cmake .. && \
make -j3
RUN \
cd /root/workarea/gnuradio/build && \
make install
RUN uhd_images_downloader
RUN mkdir -p /root/.ssh && touch /root/.ssh/authorized_keys
# PYTHONPATH=/usr/local/lib/python3/dist-packages LD_LIBRARY_PATH=/usr/local/lib GDK_SYNCHRONIZE=1 gnuradio-companion
# /usr/bin/uhd_image_loader --args="type=x300,addr=192.168.10.2"
# /usr/lib/uhd/utils/uhd_images_downloader.py
# License: BSD-3-Clause
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment