-
Notifications
You must be signed in to change notification settings - Fork 37
AArch64 Docker build error #141
Comments
Another error on commit 46fd9f1. macOS 11.4, aarch64, Docker version 20.10.6, build 370c289 docker/build
To build LLVM11 version, use env LLVM11=yes docker/build
Making docker image rvt_base:latest using Dockerfile
../mkimage: line 20: [: -v: unary operator expected
[+] Building 0.6s (3/3) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 1.88kB 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> ERROR [internal] load metadata for docker.io/library/ubuntu:20.04 0.5s
------
> [internal] load metadata for docker.io/library/ubuntu:20.04:
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = open /Users/USERNAME/.docker/.token_seed: permission denied |
Ran sudo docker/build, now getting this error that it is unable to find many packages. => ERROR [2/3] RUN apt-get --yes update && apt-get install --no-install-recommends --yes bison build-essential clang-10 clang-format-10 c 8.7s
------
> importing cache manifest from rvt_base:latest:
------
------
> [2/3] RUN apt-get --yes update && apt-get install --no-install-recommends --yes bison build-essential clang-10 clang-format-10 clang-tools-10 clang-11 clang-format-11 clang-tools-11 gcc-multilib g++-7-multilib cmake curl doxygen expect flex git libboost-all-dev libcap-dev libffi-dev libgoogle-perftools-dev libncurses5-dev libsqlite3-dev libssl-dev libtcmalloc-minimal4 lib32stdc++-7-dev libgmp-dev libgmpxx4ldbl lld-10 lld-11 llvm-10 llvm-10-dev llvm-11 llvm-11-dev ncurses-doc ninja-build perl pkg-config python python3 python3-minimal python3-pip subversion sudo unzip wget && apt-get clean && pip3 install --no-cache-dir setuptools && pip3 install --no-cache-dir argparse colored lit pyyaml tabulate termcolor toml wllvm:
#6 0.419 Get:1 http://ports.ubuntu.com/ubuntu-ports focal InRelease [265 kB]
#6 1.035 Get:2 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease [114 kB]
#6 1.135 Get:3 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease [101 kB]
#6 1.260 Get:4 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [114 kB]
#6 1.465 Get:5 http://ports.ubuntu.com/ubuntu-ports focal/restricted arm64 Packages [1317 B]
#6 1.473 Get:6 http://ports.ubuntu.com/ubuntu-ports focal/multiverse arm64 Packages [139 kB]
#6 1.480 Get:7 http://ports.ubuntu.com/ubuntu-ports focal/main arm64 Packages [1234 kB]
#6 2.020 Get:8 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 Packages [11.1 MB]
#6 6.737 Get:9 http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 Packages [988 kB]
#6 7.171 Get:10 http://ports.ubuntu.com/ubuntu-ports focal-updates/restricted arm64 Packages [2893 B]
#6 7.171 Get:11 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages [912 kB]
#6 7.501 Get:12 http://ports.ubuntu.com/ubuntu-ports focal-updates/multiverse arm64 Packages [5147 B]
#6 7.502 Get:13 http://ports.ubuntu.com/ubuntu-ports focal-backports/universe arm64 Packages [4304 B]
#6 7.503 Get:14 http://ports.ubuntu.com/ubuntu-ports focal-security/restricted arm64 Packages [2649 B]
#6 7.505 Get:15 http://ports.ubuntu.com/ubuntu-ports focal-security/universe arm64 Packages [666 kB]
#6 7.656 Get:16 http://ports.ubuntu.com/ubuntu-ports focal-security/multiverse arm64 Packages [2378 B]
#6 7.657 Get:17 http://ports.ubuntu.com/ubuntu-ports focal-security/main arm64 Packages [586 kB]
#6 7.879 Fetched 16.3 MB in 8s (2114 kB/s)
#6 7.879 Reading package lists...
#6 8.245 Reading package lists...
#6 8.580 Building dependency tree...
#6 8.648 Reading state information...
#6 8.679 Package gcc-multilib is not available, but is referred to by another package.
#6 8.679 This may mean that the package is missing, has been obsoleted, or
#6 8.679 is only available from another source
#6 8.679
#6 8.715 E: Package 'gcc-multilib' has no installation candidate
#6 8.715 E: Unable to locate package g++-7-multilib
#6 8.715 E: Couldn't find any package by regex 'g++-7-multilib'
#6 8.715 E: Unable to locate package lib32stdc++-7-dev
#6 8.715 E: Couldn't find any package by regex 'lib32stdc++-7-dev'
------
executor failed running [/bin/sh -c apt-get --yes update && apt-get install --no-install-recommends --yes bison build-essential clang-10 clang-format-10 clang-tools-10 clang-11 clang-format-11 clang-tools-11 gcc-multilib g++-7-multilib cmake curl doxygen expect flex git libboost-all-dev libcap-dev libffi-dev libgoogle-perftools-dev libncurses5-dev libsqlite3-dev libssl-dev libtcmalloc-minimal4 lib32stdc++-7-dev libgmp-dev libgmpxx4ldbl lld-10 lld-11 llvm-10 llvm-10-dev llvm-11 llvm-11-dev ncurses-doc ninja-build perl pkg-config python python3 python3-minimal python3-pip subversion sudo unzip wget && apt-get clean && pip3 install --no-cache-dir setuptools && pip3 install --no-cache-dir argparse colored lit pyyaml tabulate termcolor toml wllvm]: exit code: 100''' |
z3 isn't releasing an aarch64 Ubuntu build. This will have to be built from source pinned to whatever commit hash is recommended. Next error, there is no prebuilt config for aarch64 on klee-uclibc: => ERROR [8/8] RUN sh build_klee 12.3s
------
> importing cache manifest from rvt_klee:latest:
------
------
> [8/8] RUN sh build_klee:
#13 0.164 Cloning into 'klee-uclibc'...
#13 12.12 Note: switching to 'klee_uclibc_v1.2'.
#13 12.12
#13 12.12 You are in 'detached HEAD' state. You can look around, make experimental
#13 12.12 changes and commit them, and you can discard any commits you make in this
#13 12.12 state without impacting any branches by switching back to a branch.
#13 12.12
#13 12.12 If you want to create a new branch to retain commits you create, you may
#13 12.12 do so (now or later) by using -c with the switch command. Example:
#13 12.12
#13 12.12 git switch -c <new-branch-name>
#13 12.12
#13 12.12 Or undo this operation with:
#13 12.12
#13 12.12 git switch -
#13 12.12
#13 12.12 Turn off this advice by setting config variable advice.detachedHead to false
#13 12.12
#13 12.12 HEAD is now at 8ccd74cf6 Merge pull request #25 from MartinNowack/fix_32bit_detection
#13 12.15 INFO:Forcing C compiler to be.../usr/bin/clang-10
#13 12.15 INFO:Absolute path to compiler.../usr/bin/clang-10
#13 12.15 INFO:Disabling assertions
#13 12.15 INFO:Configuring for Debug build
#13 12.15 INFO:Configuring for LLVM bitcode archive
#13 12.15 INFO:Using llvm-config at.../usr/bin/llvm-config-10
#13 12.18 INFO:Using llvm tool dir.../usr/lib/llvm-10/bin
#13 12.18 INFO:Found "/usr/lib/llvm-10/bin/llvm-objdump".
#13 12.18 INFO:Found "/usr/lib/llvm-10/bin/llvm-link".
#13 12.18 INFO:Found "/usr/lib/llvm-10/bin/llvm-ar".
#13 12.18 INFO:Found "/usr/lib/llvm-10/bin/llvm-nm".
#13 12.18 INFO:Testing LLVM Bitcode compiler.../usr/bin/clang-10
#13 12.24 INFO:Compiler /usr/bin/clang-10 works
#13 12.24 INFO:Using LLVM Bitcode Compiler.../usr/bin/clang-10
#13 12.24 INFO:Checking for ncurses...
#13 12.29 INFO:Writing templated file to "/home/root/klee-uclibc/Makefile.klee"
#13 12.29 INFO:Setting up pre-made configure for...aarch64
#13 12.29 ERROR:"/home/root/klee-uclibc/klee-premade-configs/aarch64" does not exist. Cannot install pre-made .config file
------
executor failed running [/bin/sh -c sh build_klee]: exit code: 1 |
Thanks for the report. It looks like the first issue is due to Ubuntu having a slightly different set of packages (or names for packages??) on Arm than on x86. Probably not too hard to fix. The second issue seems to be about KLEE and KLEE-uclibc supporting Arm. A quick search on their github page suggests that there have been no discussions of AArch64 or Arm so it doesn't seem to be on their radar. [Incidentally... In case you are wondering why don't just use KLEE's docker images directly? When we first started using KLEE, this was not possible. After the recent simplification of our own docker images, I think that we are very close to being able to use the KLEE docker images. I suspect that we will switch to using their images sometime in the future.] |
Docker version 20.10.6, build 370c289 macOS 11.4 aarch64 on commit e58c6a5.
=> ERROR importing cache manifest from rvt_base:latest
I had to delete this line from docker/mkimage:
--cache-from="${DOCKER_IMAGE_NAME}:${DOCKER_VERSION}" \
This cache doesn't exist on the first build?
The text was updated successfully, but these errors were encountered: