blob: 647bce6215e33d94f95cb56ead335d9066b17708 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
id = 1317
title = "\"make-check avocado\" doesn't work in ubuntu 1804 because of older versions of pip and setuputils"
state = "closed"
created_at = "2022-11-15T16:04:11.270Z"
closed_at = "2022-11-15T18:59:18.486Z"
labels = ["Closed::Invalid"]
url = "https://gitlab.com/qemu-project/qemu/-/issues/1317"
host-os = "Ubuntu 18.04"
host-arch = "x86_64"
qemu-version = "98f10f0e2613ba1ac2ad3f57a5174014f6dcb03d"
guest-os = "n/a"
guest-arch = "n/a"
description = """make check-avocado tests don't run in Ubuntu 18.04, I get an error:
`Command "python setup.py egg_info" failed with error code 1 in /qemu/python/`
It looks like pip and setuputils are too old in 18.04 (which is still an active lts version supposedly)."""
reproduce = """Compile qemu in Ubuntu 18.04. This is an ad-hoc example with docker but I reproduced it in Ubuntu 18.04 VM too
1. Create docker from Dockerfile [Dockerfile](/uploads/a5748cabca5319f467cbc0b803ed9104/Dockerfile):
<code>FROM ubuntu:18.04
RUN apt update
RUN apt-get install -y git libglib2.0-dev libfdt-dev libpixman-1-dev zlib1g-dev ninja-build git-email libaio-dev libbluetooth-dev libcapstone-dev libbrlapi-dev libbz2-dev libcap-ng-dev libcurl4-gnutls-dev libgtk-3-dev libibverbs-dev libjpeg8-dev libncurses5-dev libnuma-dev librbd-dev librdmacm-dev libsasl2-dev libsdl2-dev libseccomp-dev libsnappy-dev libssh-dev libvde-dev libvdeplug-dev libvte-2.91-dev libxen-dev liblzo2-dev valgrind xfslibs-dev python3-venv</code>
`docker build -t 1804qemuavocado .`
2. Run shell inside of docker:
`docker run -it 1804qemuavocado bash`
3. Clone QEMU:
`git clone --depth 1 https://github.com/qemu/qemu.git`
4. Build QEMU (targets and parameters should not matter much):
<code>cd qemu
mkdir build
cd build
../configure --target-list=x86_64-softmmu
ninja</code>
5. Attempt to run tests:
`make check-avocado`
6. Get an error:
<code>/usr/bin/python3 -B /qemu/meson/meson.py introspect --targets --tests --benchmarks | /usr/bin/python3 -B scripts/mtest2make.py > Makefile.mtest
GIT ui/keycodemapdb meson tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 dtc
GIT ui/keycodemapdb meson tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 dtc
VENV /qemu/build/tests/venv
VENVPIP install -e /qemu/python/
Command "python setup.py egg_info" failed with error code 1 in /qemu/python/
/qemu/tests/Makefile.include:115: recipe for target '/qemu/build/tests/venv' failed
make: *** [/qemu/build/tests/venv] Error 1</code>"""
additional = """As far as I understand, upgrading pip in system won't help, because venv creates an environment with base pip version (9 in case of Ubuntu 18.04). I tried creating a small patch [patch.diff](/uploads/0ae4883106773f0ea940d27b74219732/patch.diff) for tests/Makefile.include, that upgrades pip and setuputils in venv to the latest version, and it seem to help, but I don't know if it's the right solution to always have the latest version. Probably some LTS version should be chosen, if such thing exists for pip."""
|