cannot install brotli bindings on Python 2.7 anymore #343

Open
opened 2026-01-29 20:42:19 +00:00 by claunia · 7 comments
Owner

Originally created by @jjnurminen on GitHub (Sep 25, 2020).

Hi,

I cannot install brotli from PyPi any more, though seemingly it should still support Python 2.7. I can reproduce by creating a conda environment:

conda create -n py27 python=2.7

Saying pip install brotli first tells me to install Visual C++ from http://aka.ms/vcpython27. However, after installing that and trying again, I get the following during compilation:

 _brotli.obj : warning LNK4197: export 'init_brotli' specified multiple times; using first specification
       Creating library bin\temp.win-amd64-2.7\Release\c/common\_brotli.lib and object bin\temp.win-amd64-2.7\Release\c/common\_brotli.exp
    encode.obj : error LNK2001: unresolved external symbol _tzcnt_u64
    static_dict.obj : error LNK2001: unresolved external symbol _tzcnt_u64
    backward_references.obj : error LNK2019: unresolved external symbol _tzcnt_u64 referenced in function FindMatchLengthWithLimit

I'm on Windows 10, 64-bit Python. Any hints are appreciated.

Originally created by @jjnurminen on GitHub (Sep 25, 2020). Hi, I cannot install brotli from PyPi any more, though seemingly it should still support Python 2.7. I can reproduce by creating a conda environment: conda create -n py27 python=2.7 Saying `pip install brotli` first tells me to install Visual C++ from http://aka.ms/vcpython27. However, after installing that and trying again, I get the following during compilation: ``` _brotli.obj : warning LNK4197: export 'init_brotli' specified multiple times; using first specification Creating library bin\temp.win-amd64-2.7\Release\c/common\_brotli.lib and object bin\temp.win-amd64-2.7\Release\c/common\_brotli.exp encode.obj : error LNK2001: unresolved external symbol _tzcnt_u64 static_dict.obj : error LNK2001: unresolved external symbol _tzcnt_u64 backward_references.obj : error LNK2019: unresolved external symbol _tzcnt_u64 referenced in function FindMatchLengthWithLimit ``` I'm on Windows 10, 64-bit Python. Any hints are appreciated.
Author
Owner

@jjnurminen commented on GitHub (Sep 25, 2020):

Seems to be related to the fact that the Windows Python 2.7/AMD64 binary wheel is not on PyPi any more, so pip tries to build it from source (and fails).

@jjnurminen commented on GitHub (Sep 25, 2020): Seems to be related to the fact that the Windows Python 2.7/AMD64 binary wheel is not on PyPi any more, so pip tries to build it from source (and fails).
Author
Owner

@eustas commented on GitHub (Sep 27, 2020):

The problem has been recently fixed. Soon I will make 1.0.10 release to fix this problem in PyPi

@eustas commented on GitHub (Sep 27, 2020): The problem has been recently fixed. Soon I will make 1.0.10 release to fix this problem in PyPi
Author
Owner

@jjnurminen commented on GitHub (Sep 28, 2020):

@eustas sounds good, thanks.

@jjnurminen commented on GitHub (Sep 28, 2020): @eustas sounds good, thanks.
Author
Owner

@Antoine-Sc commented on GitHub (Oct 13, 2020):

Hi,

I have the same problem by setting up esp-idf.
How did you fix the problem ? Which version of brotli ?

@Antoine-Sc commented on GitHub (Oct 13, 2020): Hi, I have the same problem by setting up esp-idf. How did you fix the problem ? Which version of brotli ?
Author
Owner

@jjnurminen commented on GitHub (Oct 13, 2020):

@Antoine-Sc if you install brotli 1.0.7, you will still get the binary wheel.

@jjnurminen commented on GitHub (Oct 13, 2020): @Antoine-Sc if you install brotli 1.0.7, you will still get the binary wheel.
Author
Owner

@Antoine-Sc commented on GitHub (Oct 13, 2020):

Ok. It did not work for me. I'm trying to find out why

@Antoine-Sc commented on GitHub (Oct 13, 2020): Ok. It did not work for me. I'm trying to find out why
Author
Owner

@GitMensch commented on GitHub (Jun 21, 2024):

brotli 1.1 is out so this may be closed-fixed; if this issue is unexpectedly not fixed by this I'd suggest to close-not-planned as Python2 is much less relevant in 2024 than it was in 2020 and it would possibly useful to drop anything that is explicit done to support Python2.

@GitMensch commented on GitHub (Jun 21, 2024): brotli 1.1 is out so this may be closed-fixed; if this issue is unexpectedly not fixed by this I'd suggest to close-not-planned as Python2 is much less relevant in 2024 than it was in 2020 and it would possibly useful to drop anything that is explicit done to support Python2.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/brotli#343