LINK : fatal error LNK1104: cannot open file 'uuid.lib' RRS feed

  • Question

  • I am facing the below error while trying to install apache-airflow in windows using PIP3 command (C:\Users\ekranga\AppData\Local\Programs\Python\Python37>pip3 install apache-airflow)

        C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC
    \14.16.27023\bin\HostX86\x86\link.exe /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFE
    ST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:c:\users\ekranga\appdata\local\programs\p
    ython\python37\libs /LIBPATH:c:\users\ekranga\appdata\local\programs\python\pyth
    on37\PCbuild\amd64 "/LIBPATH:C:\Program Files (x86)\Microsoft Visual Studio\2017
    \BuildTools\VC\Tools\MSVC\14.16.27023\ATLMFC\lib\x86" "/LIBPATH:C:\Program Files
     (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\lib\x86
    " /EXPORT:PyInit_setproctitle build\\Release\src/setproctitle.
    obj build\\Release\src/spt_debug.obj build\\
    Release\src/spt_setup.obj build\\Release\src/spt_status.obj bu
    ild\\Release\src/spt_strlcpy.obj /OUT:build\\
    setproctitle.cp37-win_amd64.pyd /IMPLIB:build\\Release\src\set
        LINK : fatal error LNK1104: cannot open file 'uuid.lib'
        error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Buil
    dTools\\VC\\Tools\\MSVC\\14.16.27023\\bin\\HostX86\\x86\\link.exe' failed with e
    xit status 1104

    Friday, March 15, 2019 1:27 PM

All replies

  • The library uuid.lib is part of the Windows SDK. If you don't set up the build environment to include these paths (you usually use the batch files) then you need to add the Windows SDK library directory to the path too. The Windows 10 SDK, which should be installed along side Visual Studio 2017, should be installed in C:\Program Files (x86)\Windows Kits\10, so the library directory is in the directory lib under this.

    Although I noticed something important, the build implies that it is building the x64 version ( but the paths that it is using to get libraries from are the x86 libraries. If this is true then this will fail to build.

    This is a signature. Any samples given are not meant to have error checking or show best practices. They are meant to just illustrate a point. I may also give inefficient code or introduce some problems to discourage copy/paste coding. This is because the major point of my posts is to aid in the learning process.

    Sunday, March 17, 2019 11:24 AM