From 1b0d4f1feee7f3b7bdb64038e7392ba5f5b291b1 Mon Sep 17 00:00:00 2001 From: Wolfgang Hess Date: Thu, 4 Jun 2020 11:09:18 +0200 Subject: [PATCH] Add Ubuntu 18.04 to the install scripts, CI, docs. (#1697) --- .travis.yml | 1 + Dockerfile.bionic | 34 ++++++++++++++++++++++++++++++++++ docs/source/index.rst | 4 ++-- scripts/install_debs_cmake.sh | 6 ++++++ 4 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 Dockerfile.bionic diff --git a/.travis.yml b/.travis.yml index e81cd9f..4d089cc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,6 +24,7 @@ cache: env: - LSB_RELEASE=trusty DOCKER_CACHE_FILE=/home/travis/docker/trusty-cache.tar.gz CC=gcc CXX=g++ - LSB_RELEASE=xenial DOCKER_CACHE_FILE=/home/travis/docker/xenial-cache.tar.gz CC=gcc CXX=g++ + - LSB_RELEASE=bionic DOCKER_CACHE_FILE=/home/travis/docker/bionic-cache.tar.gz CC=gcc CXX=g++ - LSB_RELEASE=jessie DOCKER_CACHE_FILE=/home/travis/docker/jessie-cache.tar.gz CC=gcc CXX=g++ - LSB_RELEASE=stretch DOCKER_CACHE_FILE=/home/travis/docker/stretch-cache.tar.gz CC=gcc CXX=g++ diff --git a/Dockerfile.bionic b/Dockerfile.bionic new file mode 100644 index 0000000..1de8281 --- /dev/null +++ b/Dockerfile.bionic @@ -0,0 +1,34 @@ +# Copyright 2020 The Cartographer Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +FROM ubuntu:bionic + +ARG cc +ARG cxx + +# Set the preferred C/C++ compiler toolchain, if given (otherwise default). +ENV CC=$cc +ENV CXX=$cxx + +# This base image doesn't ship with sudo, apt-utils. tzdata is installed here to avoid hanging later +# when it would wait for user input. +RUN apt-get update && apt-get install -y sudo apt-utils tzdata && rm -rf /var/lib/apt/lists/* + +COPY scripts/install_debs_cmake.sh cartographer/scripts/ +RUN cartographer/scripts/install_debs_cmake.sh && rm -rf /var/lib/apt/lists/* +COPY scripts/install_proto3.sh cartographer/scripts/ +RUN cartographer/scripts/install_proto3.sh && rm -rf protobuf +COPY . cartographer +RUN cartographer/scripts/install_cartographer_cmake.sh && rm -rf cartographer diff --git a/docs/source/index.rst b/docs/source/index.rst index b1a540b..54b04d2 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -93,8 +93,8 @@ on systems that meet the following requirements: * 64-bit, modern CPU (e.g. 3rd generation i7) * 16 GB RAM -* Ubuntu 14.04 (Trusty) and 16.04 (Xenial) -* gcc version 4.8.4 and 5.4.0 +* Ubuntu 14.04 (Trusty), 16.04 (Xenial), 18.04 (Bionic) +* gcc version 4.8.4, 5.4.0, 7.5.0 Known Issues ------------ diff --git a/scripts/install_debs_cmake.sh b/scripts/install_debs_cmake.sh index 6a01bcb..db21f04 100755 --- a/scripts/install_debs_cmake.sh +++ b/scripts/install_debs_cmake.sh @@ -50,3 +50,9 @@ sudo apt-get install -y \ libsuitesparse-dev \ ninja-build \ python-sphinx + +# Install Ceres Solver on Ubuntu Bionic. No need to build it ourselves. +if [[ "$(lsb_release -sc)" = "bionic" ]] +then + sudo apt-get install -y libceres-dev +fi