Dependency issues of Upgrading jetson 4.3 to 4.4

Hello, I was trying to install open-cv on a Jetson TX2(Jetson 4.3, OS-Ubuntu 18.04.4 LTS), and there were some dependencies’ version issues. So, I degraded several dependencies manually from x:x.x.x-0ubuntu0.18.04.1 to x:x.x.x.

For example, to degrade libavcodec-dev, I used

sudo apt-get install -y libavcodec-dev=7:3.4.2-2

Currently, I would like to upgrade jetpack package from 4.3 to 4.4. According to the official documents, I need to execute sudo apt-get install nvidia-jetpack) but it gives us the dependency error because of the packages I manually degraded:

The following packages have unmet dependencies:


nvidia-jetpack : Depends: libopencv-python (= 4.1.1-2-gd5a58aa75) but it is not going to be installed
                  Depends: libvisionworks-sfm-dev (= 0.90.4) but it is not going to be installed
                  Depends: libvisionworks-samples (= 1.6.0.500n) but it is not going to be installed
                  Depends: libvisionworks-tracking-dev (= 0.88.2) but it is not going to be installed
                  Depends: vpi-samples (= 0.1.0) but it is not going to be installed
                  Depends: libopencv (= 4.1.1-2-gd5a58aa75) but it is not going to be installed
                  Depends: libopencv-samples (= 4.1.1-2-gd5a58aa75) but it is not going to be installed
                  Depends: libopencv-dev (= 4.1.1-2-gd5a58aa75) but it is not going to be installed
                  Depends: opencv-licenses (= 4.1.1-2-gd5a58aa75) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

What I have tried

Upgrade for all packages at once

I am trying to upgrade to the original version.

apt-get update
apt-get upgrade

Gave me some error:

E: The repository 'http://archive.canonical.com/ubuntu precise Release' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

So, I followed the answer from apt - E: The repository 'http//archive.canonical.com precise Release' is not signed - Ask Ubuntu it didn’t fix it.

install for a specific packages

Since I know the name of several packages that I degraded, I tried to upgrade by --only-upgrade option.
For example, to upgrade the package I degrade, I used

sudo apt-get install --only-upgrade libavcodec-dev

However, it gives me

Reading package lists... Done
Building dependency tree     
Reading state information... Done
libavcodec-dev is already the newest version (7:3.4.2-2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. again.

I know that libavcodec-dev(7:3.4.2-2) is not the latest version since I degraded it. However, apt-get thinks what I degraded is the newest version.

How can I fix it? Thank you

Hi,

Please try removing them first and use apt-get to re-install again.