Shutter 抱怨无法在 @INC 中找到 Carp/Always.pm

Shutter 抱怨无法在 @INC 中找到 Carp/Always.pm

我从 Ubuntu v18 完整升级到了 Ubuntu v20。

Shutter 未升级 - 它已被删除。我试图从克兰或来自源代码。两者都抱怨旧的 Perl 库。

当我尝试从源代码编译并运行它时,我收到以下消息...我读到过某处说我的系统中可以安装两个 Perl。但是,我不知道问题是否属于此类 - 它是否需要较旧版本的 Perl 还是路径问题?

使用查找/搜索我无法找到文件“always.pm”(几分钟后,我将其破坏)。

shutter

结果:

Can't locate Carp/Always.pm in @INC (you may need to install the Carp::Always module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/local/bin/shutter line 39.
BEGIN failed--compilation aborted at /usr/local/bin/shutter line 39 (#1)
    (F) You said to do (or require, or use) a file that couldn't be found.
    Perl looks for the file in all the locations mentioned in @INC, unless
    the file name included the full path to the file.  Perhaps you need
    to set the PERL5LIB or PERL5OPT environment variable to say where the
    extra library is, or maybe the script needs to add the library name
    to @INC.  Or maybe you just misspelled the name of the file.  See
    "require" in perlfunc and lib.

Uncaught exception from user code:
    Can't locate Carp/Always.pm in @INC (you may need to install the Carp::Always module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/x86_64-linux-gnu/perl5/5.30 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/local/bin/shutter line 39.
    BEGIN failed--compilation aborted at /usr/local/bin/shutter line 39.

通过发布

 sudo apt-get install --reinstall libcarp-always-perl

结果(甚至 hugin 也被删除了。我没有做太多改动而且我不希望它被删除):

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) but it is not installable
         Depends: libomp5 (>= 0.20140926) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

通过发布:

sudo apt --fix-broken install

结果:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  libtiff4 libtiffxx0c2
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  hugin
0 upgraded, 0 newly installed, 1 to remove and 15 not upgraded.
1 not fully installed or removed.
After this operation, 275 MB disk space will be freed.
Do you want to continue? [Y/n] n
Abort.

通过发布(存储库已经存在)

sudo apt dist-upgrade

其结果是:

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) but it is not installable
         Depends: libomp5 (>= 0.20140926) but it is not installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

注意:Hugin 是从源代码编译的,带有我需要的手动标志。我不想从官方存储库安装它,因为它缺少这些特殊标志(使用额外的处理能力)。然而,我试图删除它,但还是没有成功。

通过运行

sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt-get update
sudo apt-get install shutter

其结果是:

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) but it is not installable
         Depends: libomp5 (>= 0.20140926) but it is not going to be installed
 shutter : Depends: libgtk3-imageview-perl (>= 9) but it is not going to be installed
           Depends: libgoocanvas2-perl but it is not going to be installed
           Depends: libnumber-bytes-human-perl but it is not going to be installed
           Depends: libcarp-always-perl but it is not going to be installed
           Depends: libgoocanvas2-cairotypes-perl but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

通过运行:

sudo apt-get install shutter

其结果是:

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) but it is not installable
         Depends: libomp5 (>= 0.20140926) but it is not going to be installed
 shutter : Depends: libgtk3-imageview-perl (>= 9) but it is not going to be installed
           Depends: libgoocanvas2-perl but it is not going to be installed
           Depends: libnumber-bytes-human-perl but it is not going to be installed
           Depends: libcarp-always-perl but it is not going to be installed
           Depends: libgoocanvas2-cairotypes-perl but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

通过运行

 sudo apt-cache policy hugin shutter libomp5 libglew2.0 shutter libgtk3-imageview-perl libgl1

其结果是:

hugin:
  Installed: 2019.3.0.8297
  Candidate: 2020.0.0-0b1~focal
  Version table:
     2020.0.0-0b1~focal 500
        500 http://ppa.launchpad.net/ubuntuhandbook1/apps/ubuntu focal/main amd64 Packages
 *** 2019.3.0.8297 100
        100 /var/lib/dpkg/status
     2019.2.0+dfsg-1build3 500
        500 http://ftp.ntua.gr/ubuntu focal/universe amd64 Packages
shutter:
  Installed: (none)
  Candidate: 0.97-1~0linuxuprising1~focal1
  Version table:
     0.97-1~0linuxuprising1~focal1 500
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main amd64 Packages
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main i386 Packages
     0.94-1 -1
        100 /var/lib/dpkg/status
libomp5:
  Installed: (none)
  Candidate: 1:10.0-50~exp1
  Version table:
     1:10.0-50~exp1 500
        500 http://ftp.ntua.gr/ubuntu focal/universe amd64 Packages
libglew2.0:
  Installed: (none)
  Candidate: (none)
  Version table:
shutter:
  Installed: (none)
  Candidate: 0.97-1~0linuxuprising1~focal1
  Version table:
     0.97-1~0linuxuprising1~focal1 500
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main amd64 Packages
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main i386 Packages
     0.94-1 -1
        100 /var/lib/dpkg/status
libgtk3-imageview-perl:
  Installed: (none)
  Candidate: 9-1~ppa~focal4
  Version table:
     9-1~ppa~focal4 500
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main amd64 Packages
        500 http://ppa.launchpad.net/linuxuprising/shutter/ubuntu focal/main i386 Packages
libgl1:
  Installed: 1.3.2-1~ubuntu0.20.04.1
  Candidate: 1.3.2-1~ubuntu0.20.04.1
  Version table:
 *** 1.3.2-1~ubuntu0.20.04.1 500
        500 http://ftp.ntua.gr/ubuntu focal-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     1.3.1-1 500
        500 http://ftp.ntua.gr/ubuntu focal/main amd64 Packages

按照N0bert的指示:

sudo ppa-purge ppa:ubuntuhandbook1/apps

其结果是:

Updating packages lists
PPA to be removed: ubuntuhandbook1 apps
Package revert list generated:
 audacious/focal audacious-plugins:amd64/focal audacious-plugins-data/focal libaudcore5:amd64/focal libaudgui5:amd64/focal libaudqt2:amd64- libaudtag3:amd64/focal
vokoscreen-ng/focal

Disabling ubuntuhandbook1 PPA from /etc/apt/sources.list.d/ubuntuhandbook1-ubuntu-apps-bionic.list
Disabling ubuntuhandbook1 PPA from /etc/apt/sources.list.d/ubuntuhandbook1-ubuntu-apps-focal.list
Updating packages lists
Reading package lists... Done
Building dependency tree
Reading state information... Done
Selected version '3.10.1-1build1' (Ubuntu:20.04/focal [amd64]) for 'audacious'
Selected version '3.10.1-1build2' (Ubuntu:20.04/focal [amd64]) for 'audacious-plugins'
Selected version '3.10.1-1build2' (Ubuntu:20.04/focal [all]) for 'audacious-plugins-data'
Selected version '3.10.1-1build1' (Ubuntu:20.04/focal [amd64]) for 'libaudcore5'
Selected version '3.10.1-1build1' (Ubuntu:20.04/focal [amd64]) for 'libaudgui5'
Selected version '3.10.1-1build1' (Ubuntu:20.04/focal [amd64]) for 'libaudtag3'
Selected version '3.0.2-1' (Ubuntu:20.04/focal [amd64]) for 'vokoscreen-ng'
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) but it is not installable
         Depends: libomp5 (>= 0.20140926) but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
The following packages will be DOWNGRADED:
  audacious audacious-plugins audacious-plugins-data libaudcore5 libaudgui5 libaudtag3 vokoscreen-ng
The following packages will be REMOVED:
  libaudqt2 libtiffxx0c2{u}
The following partially installed packages will be configured:
  hugin{b}
0 packages upgraded, 0 newly installed, 7 downgraded, 2 to remove and 7 not upgraded.
Need to get 2,460 kB of archives. After unpacking 1,705 kB will be freed.
The following packages have unmet dependencies:
 hugin : Depends: libglew2.0 (>= 1.12.0) which is a virtual package and is not provided by any available package

         Depends: libomp5 (>= 0.20140926) but it is not going to be installed
The following actions will resolve these dependencies:

     Remove the following packages:
1)     hugin [2019.3.0.8297 (now)]


Accept this solution? [Y/n/q/?]

按“y”后,我可以使用以下命令安装 Shutter:

sudo apt-get install shutter

根据 N0bert 的指示,我如何保留 Hugin......

cd ~/Downloads
wget -c http://old-releases.ubuntu.com/ubuntu/pool/universe/t/tiff3/libtiff4_3.9.7-2ubuntu1_amd64.deb
wget -c https://mirrors.aliyun.com/oldubuntu-releases/ubuntu/pool/main/e/eglibc/multiarch-support_2.15-0ubuntu10.23_amd64.deb

sudo apt-get install -y ./libtiff4_3.9.7-2ubuntu1_amd64.deb ./multiarch-support_2.15-0ubuntu10.23_amd64.deb

wget -c http://archive.ubuntu.com/ubuntu/pool/universe/g/glew/libglew2.0_2.0.0-5_amd64.deb
sudo apt-get install -y ./libglew2.0_2.0.0-5_amd64.deb


sudo apt --fix-broken install
sudo apt autoremove --purge


cd ~/Downloads
wget -c http://old-releases.ubuntu.com/ubuntu/pool/universe/t/tiff3/libtiff4_3.9.7-2ubuntu1_amd64.deb
wget -c https://mirrors.aliyun.com/oldubuntu-releases/ubuntu/pool/main/e/eglibc/multiarch-support_2.15-0ubuntu10.23_amd64.deb

sudo apt-get install -y ./libtiff4_3.9.7-2ubuntu1_amd64.deb ./multiarch-support_2.15-0ubuntu10.23_amd64.deb

wget -c http://archive.ubuntu.com/ubuntu/pool/universe/g/glew/libglew2.0_2.0.0-5_amd64.deb
sudo apt-get install -y ./libglew2.0_2.0.0-5_amd64.deb

sudo apt-get install -y ./libtiff4_3.9.7-2ubuntu1_amd64.deb

sudo apt-get install ~/src/hugin/hugin.build/hugin-2019.3.0.8297-Linux.deb
sudo apt-get install libsz2

wget -c http://archive.ubuntu.com/ubuntu/pool/universe/h/hdf5/libhdf5-100_1.10.0-patch1+docs-4_amd64.deb
dpkg -x libhdf5-100_1.10.0-patch1+docs-4_amd64.deb /tmp/hdf
sudo cp /tmp/hdf/usr/lib/x86_64-linux-gnu/libhdf5_serial.so.100 /usr/local/lib

sudo rm /usr/lib/libhdf5_serial.so.100
sudo apt install libhdf5-103
sudo apt install libhdf5-103 --reinstall

答案1

您必须首先清理您的存储库并修复依赖关系:

sudo add-apt-repository -r ppa:hugin/hugin-builds
sudo apt-get install ppa-purge
sudo ppa-purge ppa:ubuntuhandbook1/apps

sudo apt --fix-broken install
sudo aptitude dist-upgrade

然后从安装 Shutter特别购电协议

sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt-get update
sudo apt-get install shutter

答案2

不确定这是否有用,但我在克隆 Shutter 时遇到了同样的问题git和 Ubuntu 20.04,这是我让它工作的方法:

sudo apt install libcarp-always-perl libnumber-bytes-human-perl libpango-perl libgtk3-perl libfile-copy-recursive-perl libxml-simple-perl libproc-simple-perl libsort-naturally-perl libimage-exiftool-perl libmoo-perl libgoocanvas2-perl  libproc-processtable-perl

运行 Shutter 0.99.2 Rev.1593 本身需要上述依赖项。编译模块所需的这些依赖项在 Focal repo 中不存在:

sudo apt install libimage-magick-perl libgoocanvas-2.0-dev

使用 cpan 编译模块:

cpan install Gtk3::ImageView
cpan install GooCanvas2::CairoTypes

插件需要这些:

sudo apt install libwww-mechanize-perl libjson-maybexs-perl libnet-oauth-perl  libpath-class-perl 

安装以上所有内容后,最新的 Shutter 已在我的 Ubuntu 20.04 PC 上成功运行。

相关内容