Search code examples
mingw-w64msys2pacman-package-manager

Target not found: mingw-w64-x86_64-flickcurl


I'm using MSYS2, and I was expecting to be able to install flickcurl.

I tried installing as follows, but it seems that it can't find the file.

$ pacman -S mingw-w64-x86_64-flickcurl
error: target not found: mingw-w64-x86_64-flickcurl

Am I missing something here?


Solution

  • Probably your MSYS2 is outdated (think of it like Linux package manager which you update before installing stuff), you should run following commands and if you are asked to close terminal do it:

    1. update-core - this one will fail if your MSYS2 is not very old, this is a good sign
    2. pacman -Syu - you might have to repeat it until you see there is nothing to do; it updates your installed packages
    3. pacman -S mingw-w64-x86_64-flickcurl

    Those packages should be available after those steps:

    $ pacman -Ss flickcurl
    mingw32/mingw-w64-i686-flickcurl 1.26-1
        Flickcurl is a C library for the Flickr API (mingw-w64)
    mingw64/mingw-w64-x86_64-flickcurl 1.26-1
        Flickcurl is a C library for the Flickr API (mingw-w64)
    

    Commands explained:

    • update-core - used in the past to upgrade core packages, now removed since pacman does it better
    • pacman -S <package_name> - checks local database for package and installs it if it's found (will fail if there is no database or it's outdated)
    • pacman -Su - compares installed packages to the database searching for updates (will also fail if there is no database or it's outdated)
    • pacman -Sy - downloads database with available packages
    • pacman -Syu - downloads database and searches for update, recommend way of upgrading

    Final note:

    MSYS2 doesn't support partial upgrades for the same reasons as Like Arch Linux. That means you should run pacman -Syu before installing package.