12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- FROM debian:latest
- RUN apt-get update && \
- apt-get upgrade -y && \
- apt-get install -y \
- build-essential \
- libboost-all-dev \
- libdb5.3-dev \
- libdb5.3++-dev \
- libminiupnpc-dev \
- libqrencode-dev \
- libssl-dev \
- libssl3 \
- miniupnpc \
- qtbase5-dev \
- qttools5-dev-tools \
- zlib1g-dev \
- qt5-qmake \
- qtbase5-dev \
- g++-arm-linux-gnueabihf && \
- rm -rf /var/lib/apt/lists/*
- COPY ./ecoin /ecoin
- WORKDIR /ecoin
- # Build bootstrap.
- RUN cd /ecoin/src/boost_1_68_0 && \
- ./bootstrap.sh \
- # amr64
- # ./b2 toolset=gcc-arm cxxflags="-march=armv8-a" install --prefix=/usr/local
- # amr32
- ./b2 toolset=gcc-arm cxxflags="-march=armv7-a" install --prefix=/usr/local
- # Build leveldb
- RUN cd /ecoin/src \
- rm -rf leveldb \
- git clone --depth=1 https://github.com/google/leveldb.git \
- cd leveldb \
- mkdir -p build \
- cd build \
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 .. \
- make -j$(nproc)
- # RUN cd /ecoin/src/leveldb && \
- # TARGET_OS=Linux make libleveldb.a libmemenv.a
- # Build qt5 make make
- RUN cd /ecoin && \
- # amr64
- # /usr/lib/aarch64-linux-gnu/qt5/bin/qmake \
- # amr32
- /usr/lib/arm-linux-gnueabihf/qt5/bin/qmake \
- USE_UPNP=- USE_IPV6=- USE_QRCODE=1 \
- -o Makefile ecoin-qt.pro
- # Build daemon based wallet
- RUN cd /ecoin/src && \
- make \
- USE_UPNP=- USE_IPV6=- USE_QRCODE=1 \
- -f makefile.linux && \
- strip ecoind
- RUN cp -r /ecoin/src/ecoind /usr/local/bin/ecoind
- RUN export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH && ldconfig
|