# Error: curl\_easy\_setopt: 48

**URL:** https://discourse.julialang.org/t/error-curl-easy-setopt-48/85287
**Category:** General Usage
**Tags:** question
**Created:** [August 4, 2022, 8:33am UTC](https://discourse.julialang.org/t/error-curl-easy-setopt-48/85287 "2022-08-04T08:33:27Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![emreK](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/emrek/32/36164_2.png) [@emreK](https://discourse.julialang.org/u/emreK)
#### Post date: [August 4, 2022, 8:33am UTC](https://discourse.julialang.org/t/error-curl-easy-setopt-48/85287/1 "2022-08-04T08:33:27Z")

</div>

When I try to install a package on my personal computer, where I have v1.7.3, everything is fine.  
When I try it in our cluster for v1.7.3, I get the below error. This is the case for even older versions (v1.3, v1.5), which used to work just fine.

On my personal computer I have curl version 7.92 and on the cluster it is a rather old version, 7.72.  
I went through the Julia code, and it seemed to me that it requires curl \>7.84.

Could the reason for the below error be that the package manager require curl \>7.84?

```julia
Installing known registries into `~/.julia`
┌ Error: curl_easy_setopt: 48
└ @ Downloads.Curl /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/Downloads/src/Curl/utils.jl:29
┌ Error: curl_easy_setopt: 48
└ @ Downloads.Curl /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/Downloads/src/Curl/utils.jl:29
┌ Error: curl_easy_setopt: 48
└ @ Downloads.Curl /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/Downloads/src/Curl/utils.jl:29
Unhandled Task ERROR: IOError: FDWatcher: bad file descriptor (EBADF)

...........

```

---

<div class="post-metadata">

### Author: ![ericphanson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ericphanson/32/215186_2.png) [@ericphanson](https://discourse.julialang.org/u/ericphanson)
#### Post date: [August 4, 2022, 10:19am UTC](https://discourse.julialang.org/t/error-curl-easy-setopt-48/85287/2 "2022-08-04T10:19:10Z")

</div>

Julia bundles it’s own copy of curl, but I think it could be the cluster is configured to use system curl instead. There’s some discussion in this issue: [Error: curl\_easy\_setopt: 48 · Issue #149 · JuliaLang/Downloads.jl · GitHub](https://github.com/JuliaLang/Downloads.jl/issues/149#issuecomment-1068097086)

---

<div class="post-metadata">

### Author: ![emreK](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/emrek/32/36164_2.png) [@emreK](https://discourse.julialang.org/u/emreK)
#### Post date: [August 4, 2022, 11:00am UTC](https://discourse.julialang.org/t/error-curl-easy-setopt-48/85287/3 "2022-08-04T11:00:27Z")

</div>

Thank you!  
By checking the link, I could get rid of Error 48. But still have others.  
Better to pass the task over our system admin I think 🙂

```julia
(@v1.7) pkg> st
  Installing known registries into `~/.julia`
Unhandled Task ERROR: IOError: FDWatcher: bad file descriptor (EBADF)
Stacktrace:
 [1] try_yieldto(undo::typeof(Base.ensure_rescheduled))
   @ Base ./task.jl:812
 [2] wait()
   @ Base ./task.jl:872
 [3] wait(c::Base.GenericCondition{Base.Threads.SpinLock})
   @ Base ./condition.jl:123
 [4] wait(fdw::FileWatching._FDWatcher; readable::Bool, writable::Bool)
   @ FileWatching /opt/julia-1.7.3/share/julia/stdlib/v1.7/FileWatching/src/FileWatching.jl:533
 [5] wait
   @ /opt/julia-1.7.3/share/julia/stdlib/v1.7/FileWatching/src/FileWatching.jl:504 [inlined]
 [6] macro expansion
   @ /opt/julia-1.7.3/share/julia/stdlib/v1.7/Downloads/src/Curl/Multi.jl:166 [inlined]
 [7] (::Downloads.Curl.var"#40#46"{Int32, FileWatching.FDWatcher, Downloads.Curl.Multi})()
   @ Downloads.Curl ./task.jl:429

```
