【发布时间】:2019-11-16 21:58:26
【问题描述】:
我想为Quassel IRC Core 创建一个 Dockerfile。我想从源代码构建它,所以我克隆了 repo 并想要编译,但我得到了这个有线错误。
CMake Error: The source directory "/tmp/quassel-src" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
这是我的 Dockerfile:
FROM ubuntu:18.04
MAINTAINER KeinNerd <github@keinnerd.net>
# install required packages for the build process
RUN \
apt-get update && apt-get install -y \
cmake \
make \
build-essential \
libboost-all-dev \
git-core \
icu-devtools \
libicu60 \
libssl-dev \
qtbase5-dev \
libqt5dbus5 \
qtbase5-dev-tools \
qtscript5-dev \
libqt5sql5-psql \
libqt5sql5-sqlite \
libqca-qt5-2-dev
# clone quassel-core source
RUN \
mkdir -p /tmp/quassel-src \
git clone https://github.com/quassel/quassel.git /tmp/quassel-src/ \
mkdir -p /tmp/quassel-src/build
# build the quassel-core
RUN \
cd /tmp/quassel-src/build && \
cmake \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DUSE_QT5=ON \
-DWANT_CORE=ON \
-DWANT_MONO=OFF \
-DWANT_QTCLIENT=OFF \
-DWITH_KDE=OFF \
-DWITH_CRYPT=ON \
/tmp/quassel-src && \
make && \
make install
# set environment variables
ENV HOME /config
# copy startfile
COPY start.sh /start.sh
# ports and volumes
VOLUME /config
EXPOSE 4242 4242
# start quassel-core
ENTRYPOINT ["/start.sh"]
当我在测试机器上的终端中运行代码时,它会编译和安装而不会出错。但是,如果我构建 docker 映像,我会收到错误 .. 但它的代码相同。
cd /tmp/quassel-src/build && \
cmake \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DUSE_QT5=ON \
-DWANT_CORE=ON \
-DWANT_MONO=OFF \
-DWANT_QTCLIENT=OFF \
-DWITH_KDE=OFF \
-DWITH_CRYPT=ON \
/tmp/quassel-src && \
make && \
make install
我希望有人可以帮助我。
【问题讨论】: