-
-
Notifications
You must be signed in to change notification settings - Fork 34
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
Error: curl_easy_setopt: 48 #149
Comments
Does it still happen if you disable multithreading? |
Ok, well, I guess it's good that's not the problem, but that means I need to think of what the problem might be. Did this problem happen with Julia 1.6.2 as well? |
Yes; it's been happening for a while now. Can't say for how long exactly, but certainly with 1.6.2 and even before that. |
Can you run this in your shell?:
For me it outputs this:
That's for my source build. |
That gives
for me. I'm guessing that means julia uses the system curl instead of the one it ships with or something? |
I'll add a data point. I found this open issue when trying to solve the same problem. It seems other people have had the same issue but I never saw a fix other than maybe installing an updated version of curl alongside the system curl? I always see this error when updating packages, ever since I first installed Julia at version 1.6.1 a few months ago.
Current config:
Output from
gives
|
Yep, that's what it means. The question is why? It shouldn't, afaiu, be doing that. cc @staticfloat |
First off, where did your version of Download the 1.6.3 dmg, extract the
And show me what it says. |
I install julia via homebrew. I already tried downloading from the website directly and the problem persisted. Following your instructions (with the binary from the website), I get
|
Can you give the full output of |
I was curious and compared the checksums. Turns out, the official binary and the homebrew one are the same. |
What version of macOS are you on? I see that libraries like The
|
I'm on the developer beta of macOS 12 Monterey (21A5534d), which is expected to release publicly in the next couple of weeks.
(The full output is at https://gist.github.com/Samuel3008/42ba40f37973350ad10e89695c69ad61 in case it helps)
|
The command numbers aren't as important as the fact that we have both I'm out of ideas; it appears that macOS is just loading things in a different order, which would really surprise me, but is possible I suppose. Once macOS 12 final is released, I'll see if I can reproduce. |
Oh that's a bummer. Regardless, thank you so much for your time and help! |
Is there a fix available somehow? I ran into the same problem on the most recent version of Monterey just now. |
Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed.
I reached out to Apple and they provided some guidance on what could be the issue: can anyone affected by this please try either building this branch, or running this binary (x86_64 only), and seeing if it resolves the issue? |
Ok so for registered packages it solves the problem and works perfectly! But I just noticed unregistered packages don't work (and I get the same error on 1.6.3 so nothing to do with your patch but maybe with the bug?).
|
Yes that binary works again and can download packages. Thanks for the fix – can we have that as a patch for 1.6.x? That would be awesome. |
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com>
@samuel3008 I think your issue may be unrelated. Can you please open a new issue on the
Yes, the PR (which was just merged, so |
Thank you for your help! PS: I opened the Pkg.jl issue (JuliaLang/Pkg.jl#2788 in case anybody is trying to find it). |
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com> (cherry picked from commit 76c2431)
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com> (cherry picked from commit 76c2431)
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com> (cherry picked from commit 76c2431)
The binary is a .tar.gz file. After I unzipped it, which file should I run? bin/Julia or some files else? |
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com> (cherry picked from commit 76c2431)
@Liu-Wenzheng no need to use that build anymore, just download the latest nightly version of Julia from this webpage. |
EDIT: ohhh nightly version... nvm |
You may try |
Works also again in the just published Julia 1.6.4 (4 days ago). |
Great to hear! Thanks for reporting back. |
I'd like to add a new data point here. I'm not sure it is fully fixed. I get this error after building from 1.7.1 from source.
Note that the path it gives is where I built julia but not where it is installed. I did add a Now, if I |
…42721) * Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com>
I'm using Julia 1.7.1 downloaded from julialang.org on macOS Monterey and I'm getting this error again. |
…42721) * Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com>
Can you try the debugging steps requested above? Such as |
Make it use the
|
* Disable `DL_LOAD_PATH` prepending for `@`-paths on Darwin Many thanks to Randy Rucker from Apple for pointing out that we were technically relying on undefined behavior in `dyld` for loading things via `jl_dlopen("@loader_path/@rpath/libfoo.dylib")`, due to the composition of `dlopen("@rpath/libfoo.dylib")` in our Julia code, and the `DL_LOAD_PATH` prepending we do in `jl_load_dynamic_library()`. This PR uses a slightly modified version of a patch emailed to me by Randy, and should solve JuliaLang/Downloads.jl#149 on macOS Monterey where the undefined behavior in `dyld` has changed. * Apply suggestions from code review Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Use `[]` instead of `*` Co-authored-by: Jameson Nash <vtjnash@gmail.com> (cherry picked from commit 76c2431)
I am having the same issue on my Fedora 37 instance running julia 1.8
|
Can you answer some of the above debugging steps? Eg |
I'm runing Julia 1.8.0 on Fedora 37 installed from Fedora repositories with the same error. Update: Installing Julia through Jualiaup fixes this so the Fedora packages may be just outdated. |
Similar to @Eemilp I also have no output on my Fedora 37 instance. I installed it from the default repositories |
Oh, we don't support distro Julia builds. They're usually broken because they do things like try to use whatever versions of libraries that happen to have, in this case they're using a version of libcurl that seems not to be compatible with Julia. You can complain to Fedora and ask them to fix it, but it's recommended that you use |
For what is worth, CC @nalimilan for the Fedora package. |
Hi,
I posted this problem on Slack originally and was asked to post here as well after we failed to find a fix.
Every time I upgrade my Julia packages,
Pkg.update()
gives me this same error multiple times:Note that #123 concerns the same problem, but seeing as I'm using an official build of Julia, the discussion there doesn't help I think.
This doesn't affect functionality AFAICT, has been happening for a couple of weeks now and persists even when I try with a nightly build, for example.
LD_LIBRARY_PATH
,DYLD_FALLBACK_LIBRARY_PATH
andDYLD_LIBRARY_PATH
all aren't set.The text was updated successfully, but these errors were encountered: