New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Install pycurl on windows #657
Comments
I have not built windows binaries for the most recent release, you need to install from source or someone can contribute the binaries. |
Yeah, tried everything myself, cant get this installed, not with pip nor easy_install. |
@p Your documentation states that Are there instructions for how to build a whl file for pycurl? |
If you'd like to submit a PR removing that language I'll merge it. The reason I haven't done windows builds is they require a significant time to produce for each release. If you want to tackle this, start with http://pycurl.io/docs/latest/install.html#building-from-source. |
Per #678 the winbuild code seems to have gotten broken at some point. |
pycurl no longer support windows wheels pycurl/pycurl#657 (comment)
Would it be fine to build wheels of Github Actions and publish it to PyPI rather than generating manually? I would like to help :). |
@naveen521kk This was attempted at some point however the CI dependencies were used which were fixed (i.e. outdated) versions. To build releases all of the dependencies need to be current. If you or anyone wishes to tackle this project, I suggest starting with getting the builds working locally on windows because that is a whole endeavor in itself and without understanding that I don't think you'll be successful in producing release-level builds. |
Thanks for the reply. When posting that comment I was successful in getting the wheel built working locally and on Github Actions, I just wanted to know if the contribution would be accepted. At that time this project didn't compile with Python 3.9, but it does now, so I'll need to add that also. I would rebase that branch and will make a PR for review. |
Rebasing made the wheel built fail or rather pycurl doesn't build with MSVC
Edit: StackOverflow gets me to https://stackoverflow.com/questions/26563603/too-many-initializers-for-array-in-c |
@naveen521kk The --- a/src/easy.c 2022-01-12 11:10:18
+++ b/src/easy.c 2022-01-12 11:38:01
@@ -78,7 +78,7 @@
0, /* tp_cache */
0, /* tp_subclasses */
0, /* tp_weaklist */
-#if PY_MAJOR_VERSION >= 3
+#if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 8
0, /* tp_del */
0, /* tp_version_tag */
0, /* tp_finalize */
@@ -165,7 +165,7 @@
0, /* tp_cache */
0, /* tp_subclasses */
0, /* tp_weaklist */
-#if PY_MAJOR_VERSION >= 3
+#if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 8
0, /* tp_del */
0, /* tp_version_tag */
0, /* tp_finalize */ Ref: https://www.python.org/dev/peps/pep-0590/ @p Please fix this. |
I am happy to merge a PR with that fix if it passes CI. |
Git Installed
C:\Windows\System32\curl.exe |
As noted in the error message, you need to use the |
I used that argument as well, doesn't work my curl folder has does not have this folder built/libcurl |
I got similar error as [jafrmartins], no solution? is there a released .exe can run on windows? |
You could try these unofficial pre-built Windows wheels: https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycurl pip install https://download.lfd.uci.edu/pythonlibs/archived/pycurl-7.45.1-cp39-cp39-win_amd64.whl |
Alex thanks this works! |
Thank you very much and more power |
Thank you so much for the clarification, your comment was very helpful! |
Last I checked I couldn't find the documentation for how to build binary wheels. Locating it would be a good start. |
Any other solutions? I still get this "Please specify --curl-dir=/path/to/built/libcurl" problem, when running |
PS: Trying to follow tips on another page, I installed curl via Chocolatey, and then I did this:
using the (rather redundant) path of the curl libraries installed by choco. That just gave this error:
So, I just give up for now. This is geekier than I know what to do with, at least in Windows. Linux or MacOS, I would bang on it further. |
What is
Easy to fix though. |
If you're just interested in unofficial Windows wheels built by our CI, you can just download them here (this is the latest run): Click on Artifacts. |
Wouldn't know what to do with it. What I'm trying to do is get pycurl to install in Windows. I run: I'm not a python genius, and don't know what a "wheel" file is or where it goes. The directory that Following an ancient tip at https://curl.se/mail/curlpython-2009-08/0005.html , I set up a Windows system env var: Someone on some other site suggested that urllib3 might supply curl, so I did So, kinda at a loss for what to try next. Ultimately, the goal is to install a tool called pyLoad, for which pycurl is a dependency. |
I gave up on the obscure Windows build method long time ago and created this GNU-makefile for PyCurl. |
@SMcCandlish the pycurl wheels are already-built versions of pycurl so you do not have to built it yourself, just install. https://stackoverflow.com/questions/27885397/how-do-i-install-a-python-package-with-a-whl-file |
We stopped bundling pycurl in our Windows packages because of this problem. I don't know why they ever stopped offering the wheel files. |
Building pycurl wheels is complicated, we're working on getting it back going again. |
Build a wheel yourself is the only choice currently. |
It's not ideal but that's the current state of things. |
swt2c's "artifacts" file provided what I needed. I figured out eventually that "cp312" referred not to a C compliler but to cPython 3.12 AKA a
and got:
Then after that, doing: Unfortunately, the app itself does not run right:
That's all gibberish to me, and I'll bring it up on pyLoad's github page, but at least I have an installation of pycurl now, if it's needed by something else, so thanks for the help. :-) |
What happened?
Recently I want to install pycurl, but i met a problem when I use pip install pycurl and it infomationed that 'Please specify --curl-dir'. But when I read setup.py I find out what you have written in this file that 'Windows users have to pass --curl-dir parameter', how I should do to pass that parameter? By using '#' where this parameter appear?
What is the PycURL version?
7.43.0.6(acturally most recent version of pycurl unless using whl to install
What is your Python version?
3.8.1
What is your operating system and its version?
Microsoft Windows 10 profrssional
The text was updated successfully, but these errors were encountered: