Search code examples
pythontensorflowinstallationpippackage

pip install tensorflow cannot find file called client_load_reporting_filter.h


I keep failing to run pip install on the tensorflow package. First it downloads the .whl file, then goes through a bunch of already satisfied requirements until it gets to installing collected packages: tensorflow, at which point here's the error I get:

ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\\Users\\Borik\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python38\\site-packages\\tensorflow\\include\\external\\com_github_grpc_grpc\\src\\core\\ext\\filters\\client_channel\\lb_policy\\grpclb\\client_load_reporting_filter.h'

I've never seen anything like this before and can't seem to find anything on the net. I'm using Windows 10 and the latest versions of Python and pip.


Solution

  • I hit the same issue on Win10. Rather than renaming my filesystem, I found a good solution in this Python documentation. To summarize the instructions there to change MAX_PATH, either:

    • Enable the "Enable Win32 long paths" group policy:
      • Run gpedit (or searching for "Edit Group Policy" in the Control Panel)
      • Find the "Enable Win32 long paths" option in the sidebar. It should be under Local Computer Policy -> Computer Configuration -> Administrative Templates -> System -> Filesystem (under both Windows 10 and Windows 11, currently).
    • Or edit the registry setting HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem and set LongPathsEnabled to 1.

    This extends path from char(256) to char(32000). After this change, my 'pip install tensorflow' succeeded.