1. 程式人生 > 其它 >從原始碼安裝perl竟然會影響後續其他軟體和依賴項的安裝?

從原始碼安裝perl竟然會影響後續其他軟體和依賴項的安裝?

技術標籤:linuxubuntuperlopencv

安裝程式或者依賴項報錯描述與分析

1.錯誤描述

筆者準備在ubantu14.04虛擬機器上安裝opencv,輸入如下程式碼安裝opencv依賴時報錯。

sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
錯誤如下:
正在處理用於 doc-base (0.10.5) 的觸發器 ...
Can't locate Debian/DocBase/Common.pm in @INC (you may need to install the Debian::DocBase::Common module) (@INC contains: /usr/lib/perl5/site_perl/5.32.1/x86_64-linux /usr/lib/perl5/site_perl/5.32.1 /usr/lib/perl5/5.32.1/x86_64-linux /usr/lib/perl5/5.32.1) at /usr/sbin/install-docs line 8.
BEGIN failed--compilation aborted at /usr/sbin/install-docs line 8.
dpkg: 處理軟體包 doc-base (--unpack)時出錯:
 子程序 已安裝 post-installation 指令碼 返回了錯誤號 2
正在處理用於 man-db (2.6.7.1-1ubuntu1) 的觸發器 ...
正在處理用於 libglib2.0-0:amd64 (2.40.2-0ubuntu1.1) 的觸發器 ...
在處理時有錯誤發生:
 doc-base
E: Sub-process /usr/bin/dpkg returned an error code (1)

2.問題分析與解決

原因是前段時間自己安裝了新版本的perl。將perl改回原版本就沒有錯誤了!下圖是/usr/bin/中更改後的perl。更改之前perl和perl5.32.1(自己裝的新版本)是一樣的,更改之後perl和perl5.18.2(系統軟體庫中的版本)一樣。
perl雖治標不治本,但還算是繞過問題將安裝opencv依賴的目的達到了。希望能夠幫助遇到同樣問題的朋友們。