-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Document dependency on libssl when compiling Julia from source #13389
Comments
Is this the issue when libssl is not installed? |
Yep, no libssl. |
edit: also do |
I can confirm that the new machine had no |
Also would be nice to have an error message that explained what the problem was and how to fix it. |
Unsupported URL protocol, of course. If you had run the libgit2 and/or pkg tests with a non-ssl build I suspect they would have failed. |
Do we really want to add more manually-installed dependencies? |
Do we want to be able to clone packages securely? Previously git was a manually-installed dependency for Pkg, needing just the openssl headers at compile time is much smaller. The alternatives are to put in build instructions for openssl into |
@tkelman Maybe we can allow through some build flag linking to |
I don't think libssh is the issue here, https is more important to support as mandatory than ssh (typo) |
Sorry, got confused. Why would it be a problem to list |
One more thing that needs to be installed before edit: given the important caveat that it's only needed on linux |
Doesn't sound like a high barrier, at least if a clear error can be printed at build time instead of raising a relatively obscure error at run time. |
Would have to look into whether it's possible in libgit2's cmakelists to error if openssl is not found on linux. May need a patch to do that. |
Is there a workaround when libssl is not installed and I don't have root access to the machine to install it / since which commit is libssl necessary? |
libssl is necessary on linux since merging #11196, which switched the package manager to use libgit2 instead of command-line git. You might be able to get openssl and headers as non-root from conda, then add a libgit2 build flag to point at that libssl. |
Looks like the Makefile also assumes that your cert is named cert.pem
On a new install of Ubuntu installing libssh-dev and creating a symlink in /usr/lib/ssl to an actual .pem file resolved this issue. |
Is there a guide on what to do on a mac? Not being able to tag packages is a little unfortunate. |
I don't recall you ever tagging any of your packages, @Keno :-P |
You're right. I do however, submit pull requests which uses the same mechanism. |
Where does libssh usually come from on mac? Does apple install the dev headers for it by default or with the xcode command line tools? If not, homebrew? |
I am now on the second machine without root-access and non available libssl-dev, and thus cannot run Julia in my work environment so far. I think the dependency on libssl-dev should be optional. |
See #10763 (comment). 0.5-dev should not be used by anyone except for active development, aka submitting pull requests, at this time. If you really want to use bleeding edge Julia for whatever reason and don't have root access to install the build dependencies, you can use nightly binaries. |
FWIW, this still doesn't work for me, even if I install |
This issue is about libssl, not libssh. Use https remotes going forward. |
But I like ssh remotes. Saves me from entering my password everywhere. |
You have to enter a passphrase to unlock an ssh key. And remember to start an agent in every terminal you start Julia from. I fail to see how ssh is better, and it requires building and shipping yet another library. |
I'm not asking it to be shipped. I would just like it to work if I have libssh installed. Also, on OS X the ssh-agent is handled through the key chain. |
I believe you need to comment out the line that overrides |
On a Ubuntu 14.04 machine with Julia master and no package repo,
Pkg.init
gives an error:The text was updated successfully, but these errors were encountered: