Search code examples
linuxinstallationpackageswigdpkg

'Package swig is not installed' when installing with dpkg, but visible with swig -version in terminal?


I've been working at this for a while now, and I feel like I'm going in circles. I'm trying to install oresat-star-tracker using dpkg, and it depends on swig version 4.0.1 or greater. Apt doesn't have the newer versions of swig, so I installed swig manually. I've verified it's installed correctly with

    debian@beaglebone:~$ swig -version

    SWIG Version 4.0.2

    Compiled with g++ [armv7l-unknown-linux-gnueabihf]

    Configured options: +pcre

    Please see http://www.swig.org for reporting bugs and further information
    debian@beaglebone:~/startracker$ 

When I try to install oresat-star-tracker, I get the following error

    debian@beaglebone:~$ sudo dpkg -i oresat-star-tracker_0.1.1-0_armhf.deb
    (Reading database ... 129189 files and directories currently installed.)
    Preparing to unpack oresat-star-tracker_0.1.1-0_armhf.deb ...
    Unpacking oresat-star-tracker (0.1.1-0) over (0.1.1-0) ...
    dpkg: dependency problems prevent configuration of oresat-star-tracker:
    oresat-star-tracker depends on swig (>= 4.0.1); however:
      Package swig is not installed.

I've also verified that swig is on the $PATH with

    debian@beaglebone:~$ which swig
    /usr/bin/swig

and even manually added /usr/bin/swig

    debian@beaglebone:~$ echo $PATH
    /usr/bin/swig:/home/debian/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games

I'm not sure how relevant this is, but I don't see swig in the output of

    dpkg-query --list 

Any insight on how I can make my installed swig accessible when installing with dpkg?


Solution

  • I think you may have installed swig without using a .deb or dpkg.

    If you compiled it, or just adding the binary to your path, apt/dpkg will not know about it, as they only track installed deb packages in the system.

    You will have 2 options here(3 if you don't need to use apt):

    1. Find and install trustworth .deb package for swig
    2. Create your own .deb package from the source(check out reprepro and read about it).
    3. Install all of the software you are trying install from source.(not recommended due to it being a manual update process to maintain it).