我从 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 上成功运行。