J'ai utilisé Docker pour configurer un conteneur Ubuntu 18.04, puis j'ai essayé d'installer le fichier .deb avec une erreur comme indiqué ci-dessous.
[email protected]:/sc5xx_dev/lib/toolchain# dpkg -i adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
(Reading database ... 52942 files and directories currently installed.)
Preparing to unpack adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb ...
dpkg: error processing archive adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb (--install):
new adi-cces-2.7.0:i386 package pre-installation script subprocess returned error exit status 2
Errors were encountered while processing:
adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
Sortie de sudo apt install ./adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb
:
dpkg :erreur de traitement de l'archive /sc5xx_dev/lib/toolchain/adi-CrossCoreEmbeddedStudio-linux-x86-2.7.0.deb (–unpack) :
nouveau sous-processus de script de pré-installation du package adi-cces-2.7.0:i386 a renvoyé le statut de sortie d'erreur 2 (1)
Réponse acceptée :
Je trouve comment résoudre cette question. Il est causé par le "ENV DEBIAN_FRONTEND=noninteractive
” dans Dockerfile
.
Pour installer l'ubuntu-18.04, nous devons définir le package en mode non interactif
Pour installer le adi_xxx.deb
package, nous devrions définir l'événement en mode interactif.
Donc, le bon Dockerfile :
RUN apt-get -y update
RUN DEBIAN_FRONTEND=noninteractive apt-get -y -q install net-tools build-essential minicom tftpd-hpa git-all subversion openssh-server ncurses-dev php gawk g++ m4 libncurses5-dev texinfo flex bison php-cli vim php-xml python-setuptools python-dev unzip rsync cpio bc lib32z1 lib32stdc++6 lib32ncurses5
Le mauvais Dockerfile :
EVN DEBIAN_FRONTEND=noninteractive
RUN apt-get -y update
RUN apt-get -y -q install net-tools build-essential minicom tftpd-hpa git-all subversion openssh-server ncurses-dev php gawk g++ m4 libncurses5-dev texinfo flex bison php-cli vim php-xml python-setuptools python-dev unzip rsync cpio bc lib32z1 lib32stdc++6 lib32ncurses5
Remarque :
N'utilisez pas la commande "ENV DEBIAN_FRONTEND=noninteractive
” dans la configuration du Dockerfile
ce n'est certainement pas une valeur par défaut raisonnable, et définissez-la via ENV
devrait être activement découragé, reportez-vous à https://github.com/moby/moby/issues/4032