Bonjour
pycurl ne semble pas être disponible pour python 3.11
https://pypi.org/project/pycurl/
google ne semble pas avoir d'information.
Quelqu'un sait-t-il si c'est une librairie pérenne ?
Cordialement
Bonjour
pycurl ne semble pas être disponible pour python 3.11
https://pypi.org/project/pycurl/
google ne semble pas avoir d'information.
Quelqu'un sait-t-il si c'est une librairie pérenne ?
Cordialement
Bonjour.
La dernière mise à jour du paquet remonte à décembre 2022.
Le mieux à faire je pense, c'est de contacter le développeur. Son adresse mail est visible sur la page Pypi.
Bonjour
La page PyPI mentionne "Python 3.5-3.10" sans dire si c'est "au plus" donc habituellement c'est "au moins" par défaut. De plus étant donné que Python est compatible descendant (Python 3.11 peut parfaitement faire tourner un code Python 3.5) il ne devrait y avoir aucun souci.
Et la page du site mentionne simplement "Python3" donc à priori ça fonctionnera sous toutes les versions mineures de P3 donc aussi P3.11...
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Salut,
A priori, c'est aussi pérenne que la libcurl (écrite en C) que pycurl permet de programmer depuis Python.
A priori, les développeurs ont oublié de fabriquer le binaire pour la version 11 (de Python).
Si vous voulez savoir pourquoi, il faut les contacter.
En attendant, vous pouvez compiler à partir des sources ou récupérer un wheel/binaire chez Gohlke.
- W
bonjour
Il est compatible 3.11, il passe les tests depuis décembre !
-> C'est fait.A priori, les développeurs ont oublié de fabriquer le binaire pour la version 11 (de Python).
Si vous voulez savoir pourquoi, il faut les contacter.
En réalité c'est poetry qui râleA priori, c'est aussi pérenne que la libcurl (écrite en C) que pycurl permet de programmer depuis Python.
je saute les 10 pages d'erreurs C
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 poetry update --v Updating dependencies Resolving dependencies... (44.7s) Writing lock file Package operations: 1 install, 0 updates, 0 removals Installing pycurl (7.43.0.5): Failed EnvCommandError Command ['/home/ubuntu/.cache/pypoetry/virtualenvs/vizavy-euH-eQGC-py3.11/bin/pip', 'install', '--no-deps', 'file:///home/ubuntu/.cache/pypoetry/artifacts/64/a7/d5/d24d350744ff967a5f78b62ac961c9c9241a793a7fda57a6db666b6d15/pycurl-7.43.0.5.tar.gz'] errored with the following return code 1, and output: Processing /home/ubuntu/.cache/pypoetry/artifacts/64/a7/d5/d24d350744ff967a5f78b62ac961c9c9241a793a7fda57a6db666b6d15/pycurl-7.43.0.5.tar.gz Preparing metadata (setup.py): started Preparing metadata (setup.py): finished with status 'done' Building wheels for collected packages: pycurl Building wheel for pycurl (setup.py): started Building wheel for pycurl (setup.py): finished with status 'error' error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [567 lines of output] /tmp/pip-req-build-gxf9qqsy/setup.py:906: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. if LooseVersion(distutils.__version__) > LooseVersion("1.0.1"): /tmp/pip-req-build-gxf9qqsy/setup.py:908: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. if LooseVersion(distutils.__version__) < LooseVersion("1.0.3"): Using curl-config (libcurl 7.88.1) Using SSL library: OpenSSL/LibreSSL/BoringSSL running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-cpython-311 creating build/lib.linux-x86_64-cpython-311/curl copying python/curl/__init__.py -> build/lib.linux-x86_64-cpython-311/curl running build_ext building 'pycurl' extension creating build/temp.linux-x86_64-cpython-311 creating build/temp.linux-x86_64-cpython-311/src gcc -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPYCURL_VERSION=\"7.43.0.5\" -DHAVE_CURL_SSL=1 -DHAVE_CURL_OPENSSL=1 -DHAVE_CURL_SSL=1 -I/home/ubuntu/.cache/pypoetry/virtualenvs/vizavy-euH-eQGC-py3.11/include -I/home/ubuntu/.asdf/installs/python/3.11.2/include/python3.11 -c src/docstrings.c -o build/temp.linux-x86_64-cpython-311/src/docstrings.o gcc -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -DPYCURL_VERSION=\"7.43.0.5\" -DHAVE_CURL_SSL=1 -DHAVE_CURL_OPENSSL=1 -DHAVE_CURL_SSL=1 -I/home/ubuntu/.cache/pypoetry/virtualenvs/vizavy-euH-eQGC-py3.11/include -I/home/ubuntu/.asdf/installs/python/3.11.2/include/python3.11 -c src/easy.c -o build/temp.linux-x86_64-cpython-311/src/easy.o src/easy.c: In function util_curl_close: src/easy.c:254:5: warning: curl_formfree is deprecated: since 7.56.0. Use curl_mime_free() [-Wdeprecated-declarations] 254 | SFREE(self->httppost); | ^~~~~ In file included from src/pycurl.h:33, from src/easy.c:1: /usr/include/x86_64-linux-gnu/curl/curl.h:2611:1: note: declared here 2611 | curl_formfree(struct curl_httppost *form); | ^~~~~~~~~~~~~ src/easy.c: In function do_curl_dealloc:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 2880 | CURLINFO_LASTSOCKET CURL_DEPRECATED(7.45.0, "Use CURLINFO_ACTIVESOCKET") | ^~~~~~~~~~~~~~~~~~~ src/module.c:1416:5: warning: PyEval_InitThreads is deprecated [-Wdeprecated-declarations] 1416 | PyEval_InitThreads(); | ^~~~~~~~~~~~~~~~~~ In file included from /home/ubuntu/.asdf/installs/python/3.11.2/include/python3.11/Python.h:95, from src/pycurl.h:5: /home/ubuntu/.asdf/installs/python/3.11.2/include/python3.11/ceval.h:132:37: note: declared here 132 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void); | ^~~~~~~~~~~~~~~~~~ error: command '/usr/bin/gcc' failed with exit code 1 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pycurl Running setup.py clean for pycurl Failed to build pycurl ERROR: Could not build wheels for pycurl, which is required to install pyproject.toml-based projects at ~/.asdf/installs/poetry/1.1.15/venv/lib/python3.8/site-packages/poetry/utils/env.py:1195 in _run 1191│ output = subprocess.check_output( 1192│ cmd, stderr=subprocess.STDOUT, **kwargs 1193│ ) 1194│ except CalledProcessError as e: → 1195│ raise EnvCommandError(e, input=input_) 1196│ 1197│ return decode(output) 1198│ 1199│ def execute(self, bin, *args, **kwargs):
Perso je ne suis jamais passé par là. Le site PyPI donne un source tgz à télécharger donc généralement il suffit de télécharger, désarchiver, aller dans le dossier et taper les commandes
Ou alors directement pip3 install pycurl-7.45.2.tar.gz (oui, j'ai découvert assez récemment que pip3 savait aussi gérer un .tar.gz)
Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
1
2python3 setup.py build python3 setup.py install
Après le site d'origine parle aussi de libcurl qui lui est nécessaire (ce qui semble plutôt logique)...
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Bon, à priori cela s'installe
Merci @Sve@r
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 pip3 install pycurl-7.45.2.tar.gz Processing ./pycurl-7.45.2.tar.gz Preparing metadata (setup.py) ... done Building wheels for collected packages: pycurl Building wheel for pycurl (setup.py) ... done Created wheel for pycurl: filename=pycurl-7.45.2-cp311-cp311-linux_x86_64.whl size=317263 sha256=6bef7aec8a1134ef9a507b97baf3c92f768320438df7fb7f52726fbb2d56b958 Stored in directory: /home/ubuntu/.cache/pip/wheels/aa/80/0d/caa07a27f28179ceb32db700c1857e1e4bb7fbc06ccc28877e Successfully built pycurl Installing collected packages: pycurl Successfully installed pycurl-7.45.2
Partager