Created
June 29, 2017 04:29
-
-
Save vxe/2394377d3a2edbfdebd438b0d2619ba3 to your computer and use it in GitHub Desktop.
rather ugly docker image for running clasp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM ubuntu:xenial | |
MAINTAINER Vijay Edwin | |
WORKDIR /root | |
# add LLVM repo | |
RUN apt-get -y update && apt-get -y install wget && apt-get clean | |
RUN wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key| apt-key add - | |
RUN echo 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-4.0 main'\ | |
>/etc/apt/sources.list.d/llvm4.list | |
# Copied from the original dependencies | |
# RUN apt-get update && apt-get upgrade -y && apt-get install -y \ | |
# libgc-dev libgmp-dev binutils-gold binutils-dev \ | |
# zlib1g-dev libbz2-dev libexpat-dev | |
# maybe need these... | |
# libncurses-dev libboost-filesystem-dev libboost-regex-dev \ | |
# libboost-date-time-dev libboost-program-options-dev libboost-system-dev \ | |
# libboost-iostreams-dev csh flex gfortran \ | |
# clang-4.0 libclang-common-4.0-dev libclang-4.0-dev libclang1-4.0 clang1-4.0-dbg \ | |
# libllvm4.0 libllvm4.0-dbg lldb-4.0 llvm-4.0 llvm-4.0-dev llvm-4.0-doc \ | |
# llvm-4.0-runtime clang-format-4.0 python-clang-4.0 lld-4.0 | |
# install clasp runtime dependencies | |
RUN apt-get -y update && apt-get -y install \ | |
libboost-filesystem1.58.0 libboost-date-time1.58.0 libboost-program-options1.58.0 \ | |
libboost-iostreams1.58.0 libgc1c2 llvm-4.0-runtime libgmpxx4ldbl \ | |
clang-4.0 binutils python-clang-4.0 lld-4.0 libzmq3-dev \ | |
&& apt-get clean | |
# from wiki | |
RUN apt-get -y install gcc g++ llvm clang cmake libgc-dev libgmp-dev binutils-gold binutils-dev zlib1g-dev libncurses-dev libboost-filesystem-dev libboost-regex-dev libboost-date-time-dev libboost-program-options-dev libboost-system-dev libboost-iostreams-dev | |
# system dependences | |
RUN apt-get -y install git build-essential cmake sbcl python | |
# slime | |
RUN git clone https://github.com/slime/slime.git | |
# clasp | |
RUN git clone https://github.com/drmeister/externals-clasp.git; cd externals-clasp; echo "export TARGET_OS = Linux" >> local.confg; make | |
RUN git clone https://github.com/drmeister/clasp.git; cd clasp; git checkout origin/testing; echo "EXTERNALS_CLASP_DIR = '$HOME/externals-clasp'" >> wscript.config; ./waf configure update_submodules build_cboehm | |
# swank | |
RUN echo '(load "/root/slime/swank-loader.lisp")\n\ | |
(swank-loader:init)\n \ | |
(setf swank::*loopback-interface* "0.0.0.0") \n \ | |
(swank:create-server :port 4005 :style swank:*communication-style* :dont-close t)' \ | |
>> /root/clasp/load-swank.lisp |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment