Ce problème concerne Openembedded/Yocto.'aucun module nommé setuptools' mais il est contenu dans la variable DEPENDS
J'ai un code source qui doit être compilé par un script python3 personnalisé. Cela signifie que certains scripts python3 doivent être exécutés pendant le processus do_compile()
. Le script importe setuptools, par conséquent, j'ai ajouté DEPENDS += "python3-setuptools-native"
à la recette. Pour autant que je comprenne la documentation, cela devrait rendre le module setuptools disponible pour le processus de construction (natif). Mais lorsque bitbake exécute le processus do_compile()
, j'obtiens cette erreur: no module named 'setuptools'
.
Permettez-moi de le décomposer à un minimum (non) exemple de travail:
DOSSIER: test.bb
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://test/LICENSE;md5=d41d8cd98f00b204e9800998ecf8427e"
DEPENDS += "python3-setuptools-native"
SRC_URI = "file://test.py \
file://LICENSE"
do_compile() {
python3 ${S}/../test.py
}
DOSSIER: test.py
import setuptools
print("HELLO")
bitbaking:
$ bitbake test
ERROR: test-1.0-r0 do_compile: Function failed: do_compile (log file is located at /path/to/test/1.0-r0/temp/log.do_compile.8532)
ERROR: Logfile of failure stored in: /path/to/test/1.0-r0/temp/log.do_compile.8532
Log data follows:
| DEBUG: Executing shell function do_compile
| Traceback (most recent call last):
| File "/path/to/test-1.0/../test.py", line 1, in <module>
| import setuptools
| ImportError: No module named 'setuptools'
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /path/to/test/1.0-r0/temp/log.do_compile.8532)
ERROR: Task (/path/to/test.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 400 tasks of which 398 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory
Summary: 1 task failed:
/path/to/test.bb:do_compile
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
Est-ce que mon exepectation est incorrecte, que DEPENDS += "python3-setuptools-native"
rend le module python3 'setuptools' disponible pour le script python3 dans do_compile()
? Comment puis-je accomplir cela?