How to resolve Debian virtual package dependency error

When attempting to update a locally-maintained package on a Debian wheezy system I get the following message:

The following packages have unmet dependencies:
 local-tenielle : Depends: perl:any which is a virtual package.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     local-tenielle [Not Installed]           

The control file for local-tenielle has as one of its dependencies perl. But perl is installed on the system, so why I am seeing a dependency error?

Answer

I found the problem: I built the Debian package against sid but uploaded it into the wheezy repository. For many packages this might work, but for this package in the Depends: control file field I have ${perl:Depends}. When you build a package against wheezy ${perl:Depends} turns into perl but when you build against sid it turns into perl:any. There is no perl:any package in wheezy. Thus the complaint.

To fix it, I did what I should have done from the start: build the package against sid and then backport to wheezy.

Attribution
Source : Link , Question Author : user35042 , Answer Author : user35042

Leave a Comment