我使用的是一个定制版本的Ubuntu 18.04,我有一个Docker容器,我试图在其中安装一个.deb软件包来使用前视红外相机。为了这样做,我从this website下载了文件spinnaker-2. 5. 0. 80-Ubuntu 18. 04-arm 64-pkg.tar. gz,就像Ubuntu 18. 04建议的那样。
我按照那些instructions来安装所有的东西,基本上意味着以下命令:
apt-get install libusb-1.0-0
tar xvfz spinnaker-2.5.0.80-Ubuntu18.04-arm64-pkg.tar.gz
cd spinnaker-2.5.0.80-arm64
./install_spinnaker_arm.sh
在这个过程中出现了第一个错误,我可以通过在docker容器中安装iputils-ping和lsb-release来修复:
apt install iputils-ping
apt install -y lsb-release
然而,后来又出现了另一个错误:
/var/lib/dpkg/tmp.ci/preinst: 28 /var/lib/dpkg/tmp.ci/preinst: errmsg: not found
dpkg: error processing archive libspinnaker_2.5.0.80_arm64.deb (--install):
new libspinnaker package pre-installation script subprocess returned error exit status 127
ping: zone2.flir.net: No address associated with hostname
Errors were encountered while processing:
libspinnaker_2.5.0.80_arm64.deb
我认为这是容器内的网络问题,但我确实有互联网连接,我检查了:
ping www.google.com
有没有人能给我一个建议,为什么我不能在我的docker容器中安装spinnaker SDK?或者给我一个解释,什么是“没有与主机名关联的地址”?我感谢任何方向的每一个提示。也许这是一个问题,因为我把我的docker数据文件夹移动到一个外部SD卡?
1条答案
按热度按时间c0vxltue1#
我今天遇到了同样的问题。问题不是ping,而是安装程序无法打印许可证以供审批。在
preinst
的第28行,脚本试图使用errmsg
打印错误,但该命令不存在,导致代码段开头出现以下错误:查看
preinst
脚本(我使用Archive Manager解压缩了.deb),我们发现真正的问题是它无法显示许可证:x1c 0d1x通过执行以下操作,我能够在
docker build
期间成功安装:1.确保在您的环境中未设置
DEBIAN_FRONTEND=noninteractive
(这将触发加载许可证失败)1.在dockerfile中显式运行dpkg/apt-get安装步骤(不要使用
install_spinnaker.sh
,因为它有几个地方需要输入)。(echo "yes" && cat) | dpkg -i libspinnaker_*.deb
,它将为您接受许可证。注意,您可能需要重新实现install_spinnaker.sh
中的所有配置步骤(udev修改等)。(我有一个GigE相机,所以我不必担心USB。