65 lines
3.1 KiB
Plaintext
65 lines
3.1 KiB
Plaintext
|
FROM ubuntu:20.04
|
||
|
LABEL maintainer 168062547@qq.com
|
||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||
|
RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list && \
|
||
|
apt-get update && \
|
||
|
apt-get install -y software-properties-common curl wget jq gettext git ninja-build pkg-config \
|
||
|
libssl-dev libcurl4-openssl-dev libffmpeg-ocaml-dev libfreetype-dev libalsa-ocaml-dev \
|
||
|
liblzma-dev libx264-dev
|
||
|
|
||
|
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
|
||
|
apt-get install -y locate gcc-11 g++-11 && \
|
||
|
updatedb && ldconfig && \
|
||
|
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 110 && \
|
||
|
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 110
|
||
|
|
||
|
WORKDIR /home/temp
|
||
|
RUN wget https://github.com/Kitware/CMake/releases/download/v3.25.0/cmake-3.25.0-linux-x86_64.tar.gz && \
|
||
|
wget https://boostorg.jfrog.io/artifactory/main/release/1.81.0/source/boost_1_81_0.tar.gz && \
|
||
|
wget https://github.com/zeromq/libzmq/releases/download/v4.3.4/zeromq-4.3.4.tar.gz && \
|
||
|
wget https://github.com/tfussell/xlnt/archive/refs/tags/v1.5.0.tar.gz -O xlnt-1.5.0.tar.gz
|
||
|
|
||
|
RUN tar xvf cmake-3.25.0-linux-x86_64.tar.gz -C /opt && \
|
||
|
tar xvf boost_1_81_0.tar.gz && \
|
||
|
tar xvf zeromq-4.3.4.tar.gz && \
|
||
|
tar xvf xlnt-1.5.0.tar.gz
|
||
|
ENV PATH="${PATH}:/opt/cmake-3.25.0-linux-x86_64/bin"
|
||
|
|
||
|
WORKDIR /home/temp/boost_1_81_0
|
||
|
RUN ./bootstrap.sh --prefix=/opt/Libraries/boost_1_81_0
|
||
|
RUN ./b2 install -q --prefix=/opt/Libraries/boost_1_81_0 threading=multi link=shared runtime-link=shared variant=release cxxstd=17 cxxflags=-fPIC cflags=-fPIC
|
||
|
ENV LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/Libraries/boost_1_81_0/lib"
|
||
|
|
||
|
WORKDIR /home/temp/zeromq-4.3.4/build
|
||
|
RUN cmake \
|
||
|
-G Ninja \
|
||
|
-DCMAKE_BUILD_TYPE=Debug \
|
||
|
-DCMAKE_INSTALL_PREFIX=/opt/Libraries/zeromq-4.3.4_debug \
|
||
|
..
|
||
|
RUN ninja install
|
||
|
RUN rm -fr ./*
|
||
|
RUN cmake \
|
||
|
-G Ninja \
|
||
|
-DCMAKE_BUILD_TYPE=Release \
|
||
|
-DCMAKE_INSTALL_PREFIX=/opt/Libraries/zeromq-4.3.4_release \
|
||
|
..
|
||
|
RUN ninja install
|
||
|
|
||
|
WORKDIR /home/temp/xlnt-1.5.0/build
|
||
|
RUN sed -i '1s/^/#include <limits>\n/' ../source/detail/number_format/number_formatter.cpp && \
|
||
|
cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug \
|
||
|
-DCMAKE_INSTALL_PREFIX=/opt/Libraries/xlnt-1.5.0_debug .. && \
|
||
|
ninja install && rm -fr ./* && \
|
||
|
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
|
||
|
-DCMAKE_INSTALL_PREFIX=/opt/Libraries/xlnt-1.5.0_release .. && \
|
||
|
ninja install && \
|
||
|
bash -c "sed -i -e 's/set_and_check(XLNT_INCLUDE_DIR \"include\")/# set_and_check(XLNT_INCLUDE_DIR \"include\")/g' /opt/Libraries/xlnt-1.5.0_debug/lib/cmake/xlnt/XlntConfig.cmake &&\
|
||
|
sed -i -e 's/set_and_check(XLNT_INCLUDE_DIR \"include\")/# set_and_check(XLNT_INCLUDE_DIR \"include\")/g' /opt/Libraries/xlnt-1.5.0_release/lib/cmake/xlnt/XlntConfig.cmake"
|
||
|
WORKDIR /
|
||
|
RUN rm -fr /home/temp
|
||
|
ENV LANG C.UTF-8
|
||
|
|
||
|
# docker build -f ubuntu2004.dockerfile -t develop:20.04 .
|
||
|
# docker login --username=168062547@qq.com registry.cn-shenzhen.aliyuncs.com
|
||
|
# docker tag develop:20.04 registry.cn-shenzhen.aliyuncs.com/amass_toolset/develop:20.04
|
||
|
# docker push registry.cn-shenzhen.aliyuncs.com/amass_toolset/develop:20.04
|