Using openSUSE Leap 42.1:
24 hours ago a git pull followed by a make && make testall
ran fine. This morning I had an error in make:
...
patching file tests/online/badssl.c
CMake Error: The current CMakeCache.txt directory /home/colin/Downloads/julia6/deps/scratch/libgit2-211e117a0590583a720c53172406f34186c543bd/CMakeCache.txt is different than the directory /home/colin/Downloads/julia/deps/scratch/libgit2-211e117a0590583a720c53172406f34186c543bd where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt
CMake Error: The source "/home/colin/Downloads/julia6/deps/srccache/libgit2-211e117a0590583a720c53172406f34186c543bd/CMakeLists.txt" does not match the source "/home/colin/Downloads/julia/deps/srccache/libgit2-211e117a0590583a720c53172406f34186c543bd/CMakeLists.txt" used to generate cache. Re-run cmake with a different source directory.
/home/colin/Downloads/julia6/deps/libgit2.mk:66: recipe for target 'scratch/libgit2-211e117a0590583a720c53172406f34186c543bd/build-configured' failed
make[1]: *** [scratch/libgit2-211e117a0590583a720c53172406f34186c543bd/build-configured] Error 1
Makefile:81: recipe for target 'julia-deps' failed
make: *** [julia-deps] Error 2
I thought I had fixed this with make -C deps distclean-libgit2 distclean-mbedtls distclean-libssh2
which allowed make
to run to the end. However now Julia 0.6 fails to launch with:
> julia6
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /home/colin/Downloads/julia6/src/stackwalk.c:84
record_backtrace at /home/colin/Downloads/julia6/src/task.c:238
jl_throw at /home/colin/Downloads/julia6/src/task.c:560
__init__ at ./libgit2/libgit2.jl:539
unknown function (ip: 0x7f60d03e3e08)
jl_call_method_internal at /home/colin/Downloads/julia6/src/julia_internal.h:218 [inlined]
jl_apply_generic at /home/colin/Downloads/julia6/src/gf.c:1852
jl_apply at /home/colin/Downloads/julia6/src/julia.h:1376 [inlined]
jl_module_run_initializer at /home/colin/Downloads/julia6/src/toplevel.c:83
_julia_init at /home/colin/Downloads/julia6/src/init.c:702
julia_init at /home/colin/Downloads/julia6/src/task.c:289
unknown function (ip: 0x4014cd)
__libc_start_main at /lib64/libc.so.6 (unknown line)
unknown function (ip: 0x40151f)
Prebuilt Julia 0.5 works fine.
What does ldd usr/lib/libgit2.so
say?
If you see anything in there about libssl
or libcrypto
(but not of the mbed variety), try make cleanall && make
One curiosity is that if I do a find ./ -name libgit2.so
from julia main directory I find eight different files matched, some clearly symlinks, but others may be different residual versions causing confusion.
> ldd usr/lib/libgit2.so
linux-vdso.so.1 (0x00007ffeced63000)
libcurl.so.4 => /home/colin/Downloads/julia6/usr/lib/libcurl.so.4 (0x00007f5926bf8000)
libz.so.1 => /lib64/libz.so.1 (0x00007f59269b2000)
libmbedtls.so.10 => /home/colin/Downloads/julia6/usr/lib/libmbedtls.so.10 (0x00007f592678b000)
libmbedx509.so.0 => /home/colin/Downloads/julia6/usr/lib/libmbedx509.so.0 (0x00007f5926577000)
libmbedcrypto.so.0 => /home/colin/Downloads/julia6/usr/lib/libmbedcrypto.so.0 (0x00007f5926323000)
libssh2.so.1 => /home/colin/Downloads/julia6/usr/lib/libssh2.so.1 (0x00007f59260f0000)
librt.so.1 => /lib64/librt.so.1 (0x00007f5925ee8000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5925cca000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5925922000)
/lib64/ld-linux-x86-64.so.2 (0x00005572745ee000)
Then:
make cleanall
is successful, but make finishes with:
...
configure: creating ./config.status
config.status: creating libuv.pc
config.status: creating Makefile
config.status: executing depfiles commands
config.status: executing libtool commands
make[2]: *** No rule to make target '/home/colin/Downloads/julia/deps/srccache/libuv-8d5131b6c1595920dd30644cd1435b4f344b46c8/src/fs-poll.c', needed by 'src/libuv_la-fs-poll.lo'. Stop.
/home/colin/Downloads/julia6/deps/libuv.mk:37: recipe for target 'scratch/libuv-8d5131b6c1595920dd30644cd1435b4f344b46c8/build-compiled' failed
make[1]: *** [scratch/libuv-8d5131b6c1595920dd30644cd1435b4f344b46c8/build-compiled] Error 2
Makefile:81: recipe for target 'julia-deps' failed
make: *** [julia-deps] Error 2
I'm not sure what to make of the libuv failure. Does it persist after make -C deps distclean-libuv
?
Can you also check ldd
on some of the other libraries, libcurl, libssh2, and the libmbed* ? Is anything obviously missing?
After make -C deps distclean-libuv
make still failing.
> make
cd /home/colin/Downloads/julia/deps/srccache/libunwind-1.1-julia2 && /bin/sh /home/colin/Downloads/julia/deps/srccache/libunwind-1.1-julia2/config/missing automake-1.15 --gnu Makefile
/bin/sh: line 10: cd: /home/colin/Downloads/julia/deps/srccache/libunwind-1.1-julia2: No such file or directory
Makefile:477: recipe for target '/home/colin/Downloads/julia/deps/srccache/libunwind-1.1-julia2/Makefile.in' failed
make[2]: *** [/home/colin/Downloads/julia/deps/srccache/libunwind-1.1-julia2/Makefile.in] Error 1
/home/colin/Downloads/julia6/deps/unwind.mk:31: recipe for target '/home/colin/Downloads/julia6/usr-staging/libunwind-1.1-julia2.tgz' failed
make[1]: *** [/home/colin/Downloads/julia6/usr-staging/libunwind-1.1-julia2.tgz] Error 2
Makefile:81: recipe for target 'julia-deps' failed
make: *** [julia-deps] Error 2
Something is very wrong, but I'm not sure if it's in Julia's makefiles or local to your particular clone. Does a build from scratch work correctly (maybe in a new clone to at least keep this build's copies of llvm and openblas around if they're still working)?
The directory usr/lib
does not contain a libcurl,so
or libssh2.so
or libmbed*.so
. Should they be there? Doing a find for libcurl.so finds them in .deps/build and scratch.
I will wipe the cache and try again.
@tkelman Just finished a re-clone (everything deleted and recreated from scratch) of latest v 0.6 dev, and make is successful but again, will not launch as above.
I just hit this on power:
JULIA test/all
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /home/valentin/juliatest/src/stackwalk.c:84
record_backtrace at /home/valentin/juliatest/src/task.c:238
jl_throw at /home/valentin/juliatest/src/task.c:560
__init__ at ./libgit2/libgit2.jl:539
unknown function (ip: 0x3fffa68cf1bf)
jl_call_method_internal at /home/valentin/juliatest/src/julia_internal.h:239 [inlined]
jl_apply_generic at /home/valentin/juliatest/src/gf.c:1852
jl_apply at /home/valentin/juliatest/src/julia.h:1376 [inlined]
jl_module_run_initializer at /home/valentin/juliatest/src/toplevel.c:83
_julia_init at /home/valentin/juliatest/src/init.c:702
julia_init at /home/valentin/juliatest/src/task.c:289
main at /home/valentin/juliatest/ui/repl.c:247
unknown function (ip: 0x3fffb226457f)
__libc_start_main at /lib64/power8/libc.so.6 (unknown line)
make: *** [all] Error 1
make: Leaving directory `/home/valentin/juliatest/test'
Same here, Arch Linux x86-64, both libgit2 and libssh2 are properly linked to mbedtls. Seems like git_mbedtls_stream_global_init
is returning -1.
It isn't finding the CA certificates, after trying:
In other words, this is failing.
EDIT: on my Debian systems, "/usr/lib/ssl/certs" symlinks to "/etc/ssl/certs", but on Arch this is not the case. Maybe we should add "/etc/ssl/certs" to the search path? As a workaround, exporting SSL_CERT_DIR
makes Julia work again.
On the my redhat machine at hand I have to use SSL_CERT_FILE=/etc/pki/tls/cert.pem
or SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt
Looks like we need a few non-debian-shaped defaults too for the cert locations. There's something in make install
or make binary-dist
that copies certs around, things might work after that step runs. If so we could move it earlier.
On openSUSE Leap 42.1 SSL_CERT_FILE=/etc/ssl/certs/certSIGN_ROOT_CA.pem
allows v0.6-dev to launch correctly. Not sure if this is the right .pem to use, just chose the closest to alternatives found above. Thanks.
Edit: I guess it is not the correct .pem. Pkg.update()
immediately complains the certificate is wrong.
Edit 2: SSL_CERT_FILE=/var/lib/ca-certificates/ca-bundle.pem
gets things working again. The alternate setting of SSL_CERT_DIR suggested above does not work on openSUSE.
We should also really try to make the error message clearer here if we can.
I think I hit this error on Ubuntu, so it applies to Debian-based distros too:
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /home/fengyang/julia/src/stackwalk.c:84
record_backtrace at /home/fengyang/julia/src/task.c:238
jl_throw at /home/fengyang/julia/src/task.c:560
__init__ at ./libgit2/libgit2.jl:539
unknown function (ip: 0x7fdc8d179f38)
jl_call_method_internal at /home/fengyang/julia/src/julia_internal.h:239 [inlined]
jl_apply_generic at /home/fengyang/julia/src/gf.c:1852
jl_apply at /home/fengyang/julia/src/julia.h:1377 [inlined]
jl_module_run_initializer at /home/fengyang/julia/src/toplevel.c:83
_julia_init at /home/fengyang/julia/src/init.c:702
julia_init at /home/fengyang/julia/src/task.c:289
main at /home/fengyang/julia/ui/repl.c:247
__libc_start_main at /build/glibc-GKVZIf/glibc-2.23/csu/../csu/libc-start.c:291
unknown function (ip: 0x401438)
Setting the SSL_CERT_FILE
to /usr/lib/ssl/certs/ca-certificates.crt
and SSL_CERT_DIR
to /usr/lib/ssl/certs
repaired the issue.
It may also depend on which particular ca-certificates package sets you have installed, since those come in a few different variants.
Same problem on Fedora 24.
$ ./julia
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /home/rick/src/julia/julia/src/stackwalk.c:84
record_backtrace at /home/rick/src/julia/julia/src/task.c:238
jl_throw at /home/rick/src/julia/julia/src/task.c:560
__init__ at ./libgit2/libgit2.jl:539
unknown function (ip: 0x7fb07647cf08)
jl_call_method_internal at /home/rick/src/julia/julia/src/julia_internal.h:239 [inlined]
jl_apply_generic at /home/rick/src/julia/julia/src/gf.c:1852
jl_apply at /home/rick/src/julia/julia/src/julia.h:1377 [inlined]
jl_module_run_initializer at /home/rick/src/julia/julia/src/toplevel.c:83
_julia_init at /home/rick/src/julia/julia/src/init.c:702
julia_init at /home/rick/src/julia/julia/src/task.c:289
main at /home/rick/src/julia/julia/ui/repl.c:247
__libc_start_main at /lib64/libc.so.6 (unknown line)
unknown function (ip: 0x4013c8)
We'll have to find where the default cert search path is set and add more. Someone who has a source build in one of the problematic configurations will be best placed to test proposed additions.
The patch we are carrying against mbedtls is setting these defaults. https://github.com/JuliaLang/julia/blob/f241e23db214f008baef80bf6bcf75a6c7efe5f9/deps/patches/libgit2-mbedtls.patch#L295
It honors SSL_CERT_DIR
and SSL_CERT_FILE
though. If those aren't set, perhaps we should do some searching. Kind of unfortunate that this initialization is happening eagerly though, would be better for startup time if we could defer it until an https connection is first initiated.
We also have some code here https://github.com/JuliaLang/julia/blob/b36141f4799d73113b3597ee94d5925929b2ccd5/Makefile#L456-L459 that runs during make binary-dist
to copy the build system's certs into the binary-dist tarball. If that snippet works more broadly, we could move it into deps/libgit2.mk
and have it always run?
At least on Linux the system's certs are meant to be upgraded over-time and
this would mean that the certs could get outdated.
It is quite sad that these locations are so non-standard. In my opinion the
correct course of action is to extend the lists of plausible defaults
(right now we are looking into a Debian specific place) and make libgit
init lazy.
On Fri, 30 Sep 2016 at 05:53 Tony Kelman [email protected] wrote:
We also have some code here
https://github.com/JuliaLang/julia/blob/b36141f4799d73113b3597ee94d5925929b2ccd5/Makefile#L456-L459
that runs during make binary-dist to copy the build system's certs into
the binary-dist tarball. If that snippet works more broadly, we could move
that code snippet into deps/libgit2.mk and have it always run?β
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/JuliaLang/julia/issues/18693#issuecomment-250588019,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAI3avayUgvwoRbUUVQuMtN6gEYbBRS6ks5qvCU1gaJpZM4KHZum
.
I'd rather have outdated certs than binaries that don't work standalone in minimal environments.
I don't dispute that for binaries that we distribute, but it is not a
solution for people that build ourselves or binaries that people get
through their package manager.
On Fri, 30 Sep 2016 at 06:15 Tony Kelman [email protected] wrote:
I'd rather have outdated certs than binaries that don't work standalone in
minimal environments.β
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/JuliaLang/julia/issues/18693#issuecomment-250593647,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAI3ahEUuV2JPmNTHEgulosjoHUkshKcks5qvCp5gaJpZM4KHZum
.
Why isn't it a solution for source builds? It's asking system-installed software where it decided to put things, and copying them to a known location used as a fallback when hard-coded paths all fail. We can work out the makefile rules to have the timestamps auto-update the copy if system certs get updated if you're worried about a source build sitting around for that long without having make cleanall
called on it.
I can confirm that on Fedora 24
$ export SSL_CERT_FILE=/etc/pki/tls/cert.pem
Allowed Julia to launch normally and Pkg.update()
succeeded as well.
This worked for me on RHEL7.
export SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt
Should clarify, for RHEL7 both of these point to /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
I modified to avoid the extra symbolic link hop.
export SSL_CERT_FILE=/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
$ ls -l /etc/pki/tls/certs/ca-bundle.crt
lrwxrwxrwx. 1 root root 49 Apr 14 17:20 /etc/pki/tls/certs/ca-bundle.crt -> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
$ ls -l /etc/pki/tls/cert.pem
lrwxrwxrwx. 1 root root 49 Apr 14 17:20 /etc/pki/tls/cert.pem -> /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
I'm having the same problem on Ubuntu (on Windows!) with a source build. The fix for SSL_CERT_FILE
works to launch Julia but I cannot initialize the package repository - cloning METADATA fails with a certificate error.
I'm seeing the same problem as @kshyatt here on Ubuntu on Windows. I just installed Bash for Windows yesterday, so this is a clean install that I'm seeing this on.
I think I found the root problem: https://github.com/libgit2/libgit2/pull/3935#issuecomment-253910017
The current workaround is to have Julia set SSL_CERT_FILE
manually during libgit2
initialization. See https://github.com/JuliaLang/julia/pull/18936 for the important bits, I'm not opening a PR yet, because I'm waiting for a response on the libgit2 PR I commented on.
should be fixed by https://github.com/JuliaLang/julia/pull/18936. report back if not.
Hmmm.... Still failing on openSUSE Leap 42.1 after git pull
to latest Julia.
As before, export SSL_CERT_FILE=/etc/ssl/ca-bundle.pem
added to .profile
fixes the problem.
Tried make -C deps distclean-libgit2 distclean-mbedtls distclean-libssh2
and make
was successful but still cannot start Julia 0.6 without the profile fix.
how about after make cleanall
?
Still fails.
This fixed the problem on Fedora 24 at least.
what does openssl version -d
return?
openssl version -d
OPENSSLDIR: "/etc/ssl"
Oh, looks like opensuse calls it ca-bundle.pem instead of cert.pem. We could probably add a second fallback to check that name. Which ca-certificates packages do you have installed? cert.pem might be in ca-certificates-mozilla instead of just ca-certificates? I think I had seen git or some other programs fail to work over https unless ca-certificates-mozilla is installed.
Also still fails on Bash on Ubuntu for Windows. openssl version -d
returns OPENSSLDIR: "/usr/lib/ssl"
.
This is all hidden inside ifdefs for Linux, do we need to do this for
Windows as well?
On Sun, Oct 16, 2016, 22:05 David Anthoff [email protected] wrote:
Also still fails on Bash on Ubuntu for Windows. openssl version -d
returns OPENSSLDIR: "/usr/lib/ssl".β
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/JuliaLang/julia/issues/18693#issuecomment-254113445,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAH_aGzwzyE0jBKaOiZjtE5HHKRV_H8sks5q0wI2gaJpZM4KHZum
.
-E
I don't think so, Bash on Windows should just be Ubuntu, as far as I understand it...
This is what I get as the Ubuntu version:
davidanthoff@DANTHOFF-HOME:~/source/julia$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
davidanthoff@DANTHOFF-HOME:~/source/julia$
@tkelman A system-wide search for "cert.pem" on openSUSE produces only two files, both in julia-related, not system, locations. A search for "certs.pem" finds no files with that name.
Searching for "ca-certificates*" finds
/usr/lib/ca-certificates
/usr/share/doc/packages/ca-certificates-mozilla
/usr/share/doc/packages/ca-certificates
/var/lib/ca-certificates
and digging into that /usr/share mozilla directory shows it contains one single file COPYING with license information.
/etc/ssl
has 4 entries,
lrwxrwxrwx 1 root root 38 Oct 29 2015 ca-bundle.pem -> /var/lib/ca-certificates/ca-bundle.pem
lrwxrwxrwx 1 root root 28 Oct 29 2015 certs -> /var/lib/ca-certificates/pem
-rw-r--r-- 1 root root 10835 Sep 27 11:52 openssl.cnf
drwx------ 1 root root 0 Sep 27 11:52 private
And the only reference to "_certificates-mozilla_" is the /usr/share thing above.
Alright, I think I've got a PR that should work on everybody's system. There are a few different naming conventions, but we'll just need to add more to the list as new systems find brave and exciting ways to name the same file.
Julia 0.6 is now working again on openSUSE Leap 42.1 without specification of $SSL_CERT_FILE as of
Version 0.6.0-dev.1031 (2016-10-19 02:14 UTC)
Commit 90a3740 (0 days old master)
x86_64-suse-linux
Thanks so much for testing @colbec! Are you able to install (setting JULIA_PKGDIR to something temporary may be useful for testing) packages that separately download source files, such as Blosc.jl?
@tkelman I added and tested Blosc.jl and FYI it runs fine on Julia 0.6 on openSUSE. It's not on my list of packages regularly in use so the testing will not be regular or adventurous. I am of course open to specific requests.
thanks @colbec. let's call this mostly fixed, but may need to add more cert paths for additional distros
Is there a new issue for these additional cert paths? Thinks don't yet work for bash on windows, as far as I can tell...
I'm getting this problem on Ubuntu again.
fengyang@serval ~/julia> make test
JULIA test/all
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /home/fengyang/julia/src/stackwalk.c:84
record_backtrace at /home/fengyang/julia/src/task.c:238
jl_throw at /home/fengyang/julia/src/task.c:560
__init__ at ./libgit2/libgit2.jl:558
unknown function (ip: 0x7fa1f2dc6c68)
jl_call_method_internal at /home/fengyang/julia/src/julia_internal.h:239 [inlined]
jl_apply_generic at /home/fengyang/julia/src/gf.c:1861
jl_apply at /home/fengyang/julia/src/julia.h:1378 [inlined]
jl_module_run_initializer at /home/fengyang/julia/src/toplevel.c:83
_julia_init at /home/fengyang/julia/src/init.c:696
julia_init at /home/fengyang/julia/src/task.c:289
main at /home/fengyang/julia/ui/repl.c:247
__libc_start_main at /build/glibc-GKVZIf/glibc-2.23/csu/../csu/libc-start.c:291
unknown function (ip: 0x401438)
Makefile:19: recipe for target 'all' failed
make[1]: *** [all] Error 1
Makefile:556: recipe for target 'test' failed
make: *** [test] Error 2
Do I need to change certs again?
The problem does not go away with make cleanall
.
which ubuntu version? may need more paths as in https://github.com/JuliaLang/julia/pull/18997/files#diff-a01ad0cac7aa5a648c5d00ec39bd9afc
I've just updated and upgraded Ubuntu and I'm getting this problem on Windows 10 through the Windows Subsystem for Linux with the default julia
installed with sudo apt install julia
:
C:\Users\Ismael
Ξ» bash
ismaelvc@TOYBOX /mnt/c/Users/Ismael % julia
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /build/julia-mNkFS7/julia-0.6.0/src/stackwalk.c:84
record_backtrace at /build/julia-mNkFS7/julia-0.6.0/src/task.c:238
jl_throw at /build/julia-mNkFS7/julia-0.6.0/src/task.c:560
__init__ at ./libgit2/libgit2.jl:558
unknown function (ip: 0x7f6fb2c90928)
jl_call_method_internal at /build/julia-mNkFS7/julia-0.6.0/src/julia_internal.h:239 [inlined]
jl_apply_generic at /build/julia-mNkFS7/julia-0.6.0/src/gf.c:1861
jl_apply at /build/julia-mNkFS7/julia-0.6.0/src/julia.h:1378 [inlined]
jl_module_run_initializer at /build/julia-mNkFS7/julia-0.6.0/src/toplevel.c:83
_julia_init at /build/julia-mNkFS7/julia-0.6.0/src/init.c:696
julia_init at /build/julia-mNkFS7/julia-0.6.0/src/task.c:289
unknown function (ip: 0x40138d)
__libc_start_main at /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:287
unknown function (ip: 0x4013df)
ismaelvc@TOYBOX /mnt/c/Users/Ismael % cat /etc/issue
Ubuntu 14.04.5 LTS \n \l
ismaelvc@TOYBOX /mnt/c/Users/Ismael % uname -a
Linux TOYBOX 3.4.0+ #1 PREEMPT Thu Aug 1 17:06:05 CST 2013 x86_64 x86_64 x86_64 GNU/Linux
ismaelvc@TOYBOX /mnt/c/Users/Ismael % lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
ismaelvc@TOYBOX /mnt/c/Users/Ismael % exit
C:\Users\Ismael
Ξ» ver
Microsoft Windows [VersiΓ³n 10.0.14393]
@Ismael-VC Could you test https://github.com/JuliaLang/julia/pull/19390 and see if it resolves the issue?
@TotalVerb I'm going to try to build Julia from source, using your fix if I get the same error while building, but the error I report above comes from the julia from the ubuntu package repositories, I think your fix doesn't work on that, since that julia is already built.
@Ismael-VC Now that is an install case I never thought of when making the Julia PPA.
What does openssl version -d
say for you?
@staticfloat the output of that and also which
and julia
info:
ismaelvc@TOYBOX ~ % openssl version -d
OPENSSLDIR: "/usr/lib/ssl"
ismaelvc@TOYBOX ~ % which openssl
/usr/bin/openssl
ismaelvc@TOYBOX ~ % apt show julia
Package: julia
Priority: extra
Section: science
Installed-Size: 540 MB
Maintainer: Debian Julia Team <[email protected]>
Version: 0.6.0-3000~201611231441~ubuntu14.04.1
Suggests: ess (>= 12.09-1~), julia-doc
Depends: libc6 (>= 2.17), libgcc1 (>= 1:4.1.1), libgfortran3 (>= 4.6), liblapack3 | liblapack.so.3, libopenblas-base, libstdc++6 (>= 4.8), zlib1g (>= 1:1.2.0), liblapack3 | libatlas3-base, libfftw3-3, libcholmod1.7.1 | libcholmod2.1.2 | libcholmod3.0.6 | libcholmod3, libumfpack5.4.0 | libumfpack5.6.2 | libumfpack5.7.1 | libumfpack5, libgmp10 (>= 6.1.0), libarpack2, librmath-julia-dev, libmpfr4, git, libssl1.0.0
Pre-Depends: multiarch-support
Download-Size: 121 MB
APT-Manual-Installed: yes
APT-Sources: http://ppa.launchpad.net/staticfloat/julianightlies/ubuntu/ trusty/main amd64 Packages
Description: high-performance programming language for technical computing
Julia is a high-level, high-performance dynamic programming language for
technical computing, with syntax that is familiar to users of other technical
computing environments. It provides a sophisticated compiler, distributed
parallel execution, numerical accuracy, and an extensive mathematical function
library. The library, mostly written in Julia itself, also integrates mature,
best-of-breed C and Fortran libraries for linear algebra, random number
generation, FFTs, and string processing. Julia programs are organized around
defining functions, and overloading them for different combinations of
argument types (which can also be user-defined).
.
This package provides a complete Julia installation (JIT compiler, standard
library, text-based user interface).
N: There are 2 additional records. Please use the '-a' switch to see them.
Can you show me what files are sitting in /usr/lib/ssl
? Specifically, I'm looking for something that looks like a bundle of SSL certificates, hopefully something named certs.pem
or ca.crt
or something like that.
It might also be named certs/ca-certificates.crt
.
@staticfloat here is what's in that path:
ismaelvc@TOYBOX ~ % tree /usr/lib/ssl
/usr/lib/ssl
βββ certs -> /etc/ssl/certs
βββ misc
βΒ Β βββ CA.pl
βΒ Β βββ CA.sh
βΒ Β βββ c_hash
βΒ Β βββ c_info
βΒ Β βββ c_issuer
βΒ Β βββ c_name
βΒ Β βββ tsget
βββ openssl.cnf -> /etc/ssl/openssl.cnf
βββ private -> /etc/ssl/private
3 directories, 8 files
What's inside certs?
On Sat, Nov 26, 2016, 22:03 Ismael Venegas CastellΓ³ <
[email protected]> wrote:
@staticfloat https://github.com/staticfloat here is what's in that path:
ismaelvc@TOYBOX ~ % tree /usr/lib/ssl
/usr/lib/ssl
βββ certs -> /etc/ssl/certs
βββ misc
β βββ CA.pl
β βββ CA.sh
β βββ c_hash
β βββ c_info
β βββ c_issuer
β βββ c_name
β βββ tsget
βββ openssl.cnf -> /etc/ssl/openssl.cnf
βββ private -> /etc/ssl/private3 directories, 8 files
β
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/JuliaLang/julia/issues/18693#issuecomment-263104301,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAH_aDqDaEBVrQjQxU06DKaSKUBWolYuks5rCR0ogaJpZM4KHZum
.>
-E
Lots of .pem
s I don't see anything with git:
ismaelvc@TOYBOX ~ % tree /usr/lib/ssl/certs | grep -i git
1 ismaelvc@TOYBOX ~ %
Fengyang is right. It's called "certs/ca-certificates.crt". I believe there
is a PR open right now to fix this.
On Sat, Nov 26, 2016, 22:27 Ismael Venegas CastellΓ³ <
[email protected]> wrote:
Lots of .pems I don't see anything with git:
1 ismaelvc@TOYBOX ~ % tree /usr/lib/ssl/certs | grep -i git :( 1 ismaelvc@TOYBOX ~ %
β
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/JuliaLang/julia/issues/18693#issuecomment-263104914,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAH_aPc47s2wWwF0KThHirtSJPR6D1YWks5rCSK3gaJpZM4KHZum
.>
-E
I'm getting the same error with the latest master, but setting SSL_CERT_DIR
and SSL_CERT_FILE
did not fix it:
creanj@mastermind:~/fasttmp/build/julia_0.6_2$ ./julia
fatal: error thrown and no exception handler available.
Base.InitError(mod=:LibGit2, error=ErrorException("error initializing LibGit2 module"))
rec_backtrace at /fasttmp/creanj/build/julia_0.6_2/src/stackwalk.c:84
record_backtrace at /fasttmp/creanj/build/julia_0.6_2/src/task.c:239
jl_throw at /fasttmp/creanj/build/julia_0.6_2/src/task.c:565
__init__ at ./libgit2/libgit2.jl:628
unknown function (ip: 0x7fe7e84e9698)
jl_call_method_internal at /fasttmp/creanj/build/julia_0.6_2/src/julia_internal.h:248 [inlined]
jl_apply_generic at /fasttmp/creanj/build/julia_0.6_2/src/gf.c:2217
jl_apply at /fasttmp/creanj/build/julia_0.6_2/src/julia.h:1410 [inlined]
jl_module_run_initializer at /fasttmp/creanj/build/julia_0.6_2/src/toplevel.c:85
_julia_init at /fasttmp/creanj/build/julia_0.6_2/src/init.c:704
julia_init at /fasttmp/creanj/build/julia_0.6_2/src/task.c:292
main at /fasttmp/creanj/build/julia_0.6_2/ui/repl.c:259
__libc_start_main at /home/aurel32/debian/co-packages/eglibc/squeeze/eglibc-2.11.3/csu/libc-start.c:244
unknown function (ip: 0x4016ac)
ca-certificates.crt
is located in /etc/ssl/certs/
, and /usr/lib/ssl/certs/
is a symlink to it.
Please gist the output of strace ./julia
.
Here it is.
Not solved. On one of the clusters I use, I just got the error again and I can fix it with SSL_CERT_FILE=/etc/ssl/certs/certSIGN_ROOT_CA.pem
. This is on master.
What distribution is it? I've never seen one with a name so strange. Is that the cert file that gets used by openssl
if you do an s_client
test?
Anyone who still has an issue here, try writing a patch similar to https://github.com/JuliaLang/julia/pull/19390 adding a case for wherever your system has the certs, since almost everyone else is covered by the existing cases.
I don't see this issue anymore
I investigated this further and think there is a different problem in my case. Opened a new issue #24625.
Most helpful comment
I'm having the same problem on Ubuntu (on Windows!) with a source build. The fix for
SSL_CERT_FILE
works to launch Julia but I cannot initialize the package repository - cloning METADATA fails with a certificate error.