mirror of
https://github.com/AFLplusplus/AFLplusplus.git
synced 2025-06-08 00:01:33 +00:00
make dockerfile better
This commit is contained in:
parent
8a2656681f
commit
b87d97aa2b
16
Dockerfile
16
Dockerfile
@ -11,8 +11,8 @@ LABEL "about"="AFLplusplus docker image"
|
|||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
RUN apt-get update && apt-get -y install \
|
RUN apt-get update && apt-get upgrade -y && \
|
||||||
--no-install-suggests --no-install-recommends \
|
apt-get -y install --no-install-suggests --no-install-recommends \
|
||||||
automake \
|
automake \
|
||||||
bison flex \
|
bison flex \
|
||||||
build-essential \
|
build-essential \
|
||||||
@ -21,7 +21,7 @@ RUN apt-get update && apt-get -y install \
|
|||||||
libtool libtool-bin \
|
libtool libtool-bin \
|
||||||
libglib2.0-dev \
|
libglib2.0-dev \
|
||||||
wget vim jupp nano \
|
wget vim jupp nano \
|
||||||
apt-utils apt-transport-https ca-certificates gnupg \
|
apt-utils apt-transport-https ca-certificates gnupg dialog \
|
||||||
libpixman-1-dev
|
libpixman-1-dev
|
||||||
|
|
||||||
RUN echo deb http://apt.llvm.org/focal/ llvm-toolchain-focal main >> /etc/apt/sources.list && \
|
RUN echo deb http://apt.llvm.org/focal/ llvm-toolchain-focal main >> /etc/apt/sources.list && \
|
||||||
@ -33,7 +33,7 @@ RUN echo deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu focal main
|
|||||||
RUN apt-get update && apt-get upgrade -y
|
RUN apt-get update && apt-get upgrade -y
|
||||||
|
|
||||||
RUN apt-get install -y gcc-10 g++-10 gcc-10-plugin-dev gcc-10-multilib \
|
RUN apt-get install -y gcc-10 g++-10 gcc-10-plugin-dev gcc-10-multilib \
|
||||||
libc++-10-dev gdb
|
libc++-10-dev gdb lcov
|
||||||
|
|
||||||
RUN apt-get install -y clang-11 clang-tools-11 libc++1-11 libc++-11-dev \
|
RUN apt-get install -y clang-11 clang-tools-11 libc++1-11 libc++-11-dev \
|
||||||
libc++abi1-11 libc++abi-11-dev libclang1-11 libclang-11-dev \
|
libc++abi1-11 libc++abi-11-dev libclang1-11 libclang-11-dev \
|
||||||
@ -44,15 +44,19 @@ RUN apt-get install -y clang-11 clang-tools-11 libc++1-11 libc++-11-dev \
|
|||||||
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 0
|
RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 0
|
||||||
RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 0
|
RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 0
|
||||||
|
|
||||||
RUN rm -rf /var/lib/apt/lists/*
|
RUN rm -rf /var/cache/apt/archives/*
|
||||||
|
|
||||||
ARG CC=gcc-10
|
ARG CC=gcc-10
|
||||||
ARG CXX=g++-10
|
ARG CXX=g++-10
|
||||||
ARG LLVM_CONFIG=llvm-config-11
|
ARG LLVM_CONFIG=llvm-config-11
|
||||||
|
|
||||||
RUN git clone https://github.com/AFLplusplus/AFLplusplus
|
RUN git clone https://github.com/AFLplusplus/AFLplusplus
|
||||||
|
|
||||||
RUN cd AFLplusplus && export REAL_CXX=g++-10 && make distrib && \
|
RUN cd AFLplusplus && export REAL_CXX=g++-10 && make distrib && \
|
||||||
make install && make clean
|
make install && make clean
|
||||||
|
|
||||||
|
RUN git clone https://github.com/vanhauser-thc/afl-cov afl-cov
|
||||||
|
RUN cd afl-cov && make install
|
||||||
|
|
||||||
|
RUN echo 'alias joe="jupp --wordwrap"' >> ~/.bashrc
|
||||||
|
|
||||||
ENV AFL_SKIP_CPUFREQ=1
|
ENV AFL_SKIP_CPUFREQ=1
|
||||||
|
10
README.md
10
README.md
@ -133,7 +133,15 @@ For everyone who wants to contribute (and send pull requests) please read
|
|||||||
|
|
||||||
## Building and installing afl++
|
## Building and installing afl++
|
||||||
|
|
||||||
afl++ has many build options.
|
An easy way to install afl++ with everything compiled is available via docker:
|
||||||
|
```shell
|
||||||
|
docker pull aflplusplus/aflplusplus
|
||||||
|
docker run -ti -v /location/of/your/target:/src aflplusplus/aflplusplus
|
||||||
|
```
|
||||||
|
This container is automatically generated when a push to master happens.
|
||||||
|
You will find your target source code in /src in the container.
|
||||||
|
|
||||||
|
If you want to build afl++ yourself you have many options.
|
||||||
The easiest is to build and install everything:
|
The easiest is to build and install everything:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
|
Loading…
x
Reference in New Issue
Block a user