提交 202b957d 编写于 作者: L Liu Jiaming

Docker: build poco from source to reduce image size

上级 0d4a60d9
......@@ -21,32 +21,28 @@ set -e
cd "$(dirname "${BASH_SOURCE[0]}")"
. /tmp/installers/installer_base.sh
info "Install poco ..."
bash /tmp/installers/install_poco.sh
apt-get -y update && \
apt-get -y install \
libpocofoundation50 \
libpoco-dev \
ncurses-dev \
libuuid1 \
uuid-dev \
libboost-all-dev \
libxml2-dev
uuid-dev
python3 -m pip install --no-cache-dir grpcio-tools
info "Install gflags & glog..."
bash /tmp/installers/install_gflags_glog.sh
. /tmp/installers/installer_base.sh
pip3_install grpcio-tools
info "Install Protobuf ..."
info "Install protobuf ..."
bash /tmp/installers/install_protobuf.sh
info "Install GFlags & GLog..."
bash /tmp/installers/install_gflags_glog.sh
info "Install Fast-RTPS ..."
info "Install fast-rtps ..."
bash /tmp/installers/install_fast-rtps.sh
info "Install Poco ..."
bash /tmp/installers/install_poco.sh
# Clean up cache to reduce layer size.
apt-get clean && \
rm -rf /var/lib/apt/lists/*
......@@ -21,12 +21,12 @@ set -e
cd "$(dirname "${BASH_SOURCE[0]}")"
apt-get -y update && \
apt-get -y install \
libssl-dev \
libpoco-dev
# To reduce image size
# apt-get -y update && \
# apt-get -y install \
# libssl-dev
# libpoco-dev
exit 0
. /tmp/installers/installer_base.sh
......@@ -44,10 +44,40 @@ tar xzf poco-${VERSION}-release.tar.gz
pushd poco-poco-${VERSION}-release
mkdir cmakebuild && cd cmakebuild
cmake .. -DBUILD_SHARED_LIBS=ON
# Keep only PocoFoundation
cmake .. \
-DENABLE_NETSSL=OFF \
-DENABLE_CRYPTO=OFF \
-DENABLE_JWT=OFF \
-DENABLE_APACHECONNECTOR=OFF \
-DENABLE_DATA_MYSQL=OFF \
-DENABLE_DATA_POSTGRESQL=OFF \
-DENABLE_DATA_ODBC=OFF \
-DENABLE_MONGODB=OFF \
-DENABLE_REDIS=OFF \
-DENABLE_DATA_SQLITE=OFF \
-DENABLE_DATA=OFF \
-DENABLE_PAGECOMPILER=OFF \
-DENABLE_PAGECOMPILER_FILE2PAGE=OFF \
-DENABLE_ZIP=OFF \
-DENABLE_NET=OFF \
-DENABLE_JSON=OFF \
-DENABLE_XML=OFF \
-DENABLE_PDF=OFF \
-DENABLE_POCODOC=OFF \
-DENABLE_ENCODINGS=OFF \
-DENABLE_UTIL=OFF \
-DENABLE_CPPPARSER=OFF \
-DENABLE_TESTS=OFF \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_INSTALL_PREFIX="${SYSROOT_DIR}" \
-DCMAKE_BUILD_TYPE=Release
make -j${THREAD_NUM}
make install
popd
ldconfig
# clean up
rm -rf poco-${VERSION}-release.tar.gz poco-poco-${VERSION}-release
......@@ -7,5 +7,8 @@ licenses(["notice"])
cc_library(
name = "PocoFoundation",
includes = ["."],
linkopts = ["-lPocoFoundation"],
linkopts = [
"-L/opt/apollo/sysroot/lib",
"-lPocoFoundation",
],
)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册